src/main/webapp/jquery/js/jquery.dataTables.js
author Tomas Zeman <tzeman@volny.cz>
Thu, 12 Apr 2012 10:52:42 +0200
changeset 46 3092875edd20
parent 45 38f409912075
permissions -rw-r--r--
imported patch datatables+bootstrap-2.patch
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
45
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     1
/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     2
 * @summary     DataTables
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     3
 * @description Paginate, search and sort HTML tables
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     4
 * @version     1.9.0
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     5
 * @file        jquery.dataTables.js
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     6
 * @author      Allan Jardine (www.sprymedia.co.uk)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     7
 * @contact     www.sprymedia.co.uk/contact
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     8
 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     9
 * @copyright Copyright 2008-2012 Allan Jardine, all rights reserved.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    10
 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    11
 * This source file is free software, under either the GPL v2 license or a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    12
 * BSD style license, available at:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    13
 *   http://datatables.net/license_gpl2
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    14
 *   http://datatables.net/license_bsd
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    15
 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    16
 * This source file is distributed in the hope that it will be useful, but 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    17
 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    18
 * or FITNESS FOR A PARTICULAR PURPOSE. See the license files for details.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    19
 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    20
 * For details please refer to: http://www.datatables.net
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    21
 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    22
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    23
/*jslint evil: true, undef: true, browser: true */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    24
/*globals $, jQuery,_fnExternApiFunc,_fnInitialise,_fnInitComplete,_fnLanguageCompat,_fnAddColumn,_fnColumnOptions,_fnAddData,_fnCreateTr,_fnGatherData,_fnBuildHead,_fnDrawHead,_fnDraw,_fnReDraw,_fnAjaxUpdate,_fnAjaxParameters,_fnAjaxUpdateDraw,_fnServerParams,_fnAddOptionsHtml,_fnFeatureHtmlTable,_fnScrollDraw,_fnAdjustColumnSizing,_fnFeatureHtmlFilter,_fnFilterComplete,_fnFilterCustom,_fnFilterColumn,_fnFilter,_fnBuildSearchArray,_fnBuildSearchRow,_fnFilterCreateSearch,_fnDataToSearch,_fnSort,_fnSortAttachListener,_fnSortingClasses,_fnFeatureHtmlPaginate,_fnPageChange,_fnFeatureHtmlInfo,_fnUpdateInfo,_fnFeatureHtmlLength,_fnFeatureHtmlProcessing,_fnProcessingDisplay,_fnVisibleToColumnIndex,_fnColumnIndexToVisible,_fnNodeToDataIndex,_fnVisbleColumns,_fnCalculateEnd,_fnConvertToWidth,_fnCalculateColumnWidths,_fnScrollingWidthAdjust,_fnGetWidestNode,_fnGetMaxLenString,_fnStringToCss,_fnDetectType,_fnSettingsFromNode,_fnGetDataMaster,_fnGetTrNodes,_fnGetTdNodes,_fnEscapeRegex,_fnDeleteIndex,_fnReOrderIndex,_fnColumnOrdering,_fnLog,_fnClearTable,_fnSaveState,_fnLoadState,_fnCreateCookie,_fnReadCookie,_fnDetectHeader,_fnGetUniqueThs,_fnScrollBarWidth,_fnApplyToChildren,_fnMap,_fnGetRowData,_fnGetCellData,_fnSetCellData,_fnGetObjectDataFn,_fnSetObjectDataFn,_fnApplyColumnDefs,_fnBindAction,_fnCallbackReg,_fnCallbackFire,_fnJsonString,_fnRender,_fnNodeToColumnIndex*/
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    25
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    26
(/** @lends <global> */function($, window, document, undefined) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    27
	/** 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    28
	 * DataTables is a plug-in for the jQuery Javascript library. It is a 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    29
	 * highly flexible tool, based upon the foundations of progressive 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    30
	 * enhancement, which will add advanced interaction controls to any 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    31
	 * HTML table. For a full list of features please refer to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    32
	 * <a href="http://datatables.net">DataTables.net</a>.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    33
	 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    34
	 * Note that the <i>DataTable</i> object is not a global variable but is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    35
	 * aliased to <i>jQuery.fn.DataTable</i> and <i>jQuery.fn.dataTable</i> through which 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    36
	 * it may be  accessed.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    37
	 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    38
	 *  @class
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    39
	 *  @param {object} [oInit={}] Configuration object for DataTables. Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    40
	 *    are defined by {@link DataTable.defaults}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    41
	 *  @requires jQuery 1.3+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    42
	 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    43
	 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    44
	 *    // Basic initialisation
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    45
	 *    $(document).ready( function {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    46
	 *      $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    47
	 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    48
	 *  
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    49
	 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    50
	 *    // Initialisation with configuration options - in this case, disable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    51
	 *    // pagination and sorting.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    52
	 *    $(document).ready( function {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    53
	 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    54
	 *        "bPaginate": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    55
	 *        "bSort": false 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    56
	 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    57
	 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    58
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    59
	var DataTable = function( oInit )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    60
	{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    61
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    62
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    63
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    64
		 * Add a column to the list used for the table with default values
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    65
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    66
		 *  @param {node} nTh The th element for this column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    67
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    68
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    69
		function _fnAddColumn( oSettings, nTh )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    70
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    71
			var oDefaults = DataTable.defaults.columns;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    72
			var iCol = oSettings.aoColumns.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    73
			var oCol = $.extend( {}, DataTable.models.oColumn, oDefaults, {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    74
				"sSortingClass": oSettings.oClasses.sSortable,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    75
				"sSortingClassJUI": oSettings.oClasses.sSortJUI,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    76
				"nTh": nTh ? nTh : document.createElement('th'),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    77
				"sTitle":    oDefaults.sTitle    ? oDefaults.sTitle    : nTh ? nTh.innerHTML : '',
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    78
				"aDataSort": oDefaults.aDataSort ? oDefaults.aDataSort : [iCol],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    79
				"mDataProp": oDefaults.mDataProp ? oDefaults.oDefaults : iCol
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    80
			} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    81
			oSettings.aoColumns.push( oCol );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    82
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    83
			/* Add a column specific filter */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    84
			if ( oSettings.aoPreSearchCols[ iCol ] === undefined || oSettings.aoPreSearchCols[ iCol ] === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    85
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    86
				oSettings.aoPreSearchCols[ iCol ] = $.extend( {}, DataTable.models.oSearch );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    87
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    88
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    89
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    90
				var oPre = oSettings.aoPreSearchCols[ iCol ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    91
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    92
				/* Don't require that the user must specify bRegex, bSmart or bCaseInsensitive */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    93
				if ( oPre.bRegex === undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    94
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    95
					oPre.bRegex = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    96
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    97
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    98
				if ( oPre.bSmart === undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    99
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   100
					oPre.bSmart = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   101
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   102
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   103
				if ( oPre.bCaseInsensitive === undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   104
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   105
					oPre.bCaseInsensitive = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   106
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   107
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   108
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   109
			/* Use the column options function to initialise classes etc */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   110
			_fnColumnOptions( oSettings, iCol, null );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   111
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   112
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   113
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   114
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   115
		 * Apply options for a column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   116
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   117
		 *  @param {int} iCol column index to consider
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   118
		 *  @param {object} oOptions object with sType, bVisible and bSearchable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   119
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   120
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   121
		function _fnColumnOptions( oSettings, iCol, oOptions )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   122
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   123
			var oCol = oSettings.aoColumns[ iCol ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   124
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   125
			/* User specified column options */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   126
			if ( oOptions !== undefined && oOptions !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   127
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   128
				if ( oOptions.sType !== undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   129
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   130
					oCol.sType = oOptions.sType;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   131
					oCol._bAutoType = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   132
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   133
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   134
				$.extend( oCol, oOptions );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   135
				_fnMap( oCol, oOptions, "sWidth", "sWidthOrig" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   136
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   137
				/* iDataSort to be applied (backwards compatibility), but aDataSort will take
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   138
				 * priority if defined
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   139
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   140
				if ( oOptions.iDataSort !== undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   141
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   142
					oCol.aDataSort = [ oOptions.iDataSort ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   143
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   144
				_fnMap( oCol, oOptions, "aDataSort" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   145
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   146
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   147
			/* Cache the data get and set functions for speed */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   148
			oCol.fnGetData = _fnGetObjectDataFn( oCol.mDataProp );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   149
			oCol.fnSetData = _fnSetObjectDataFn( oCol.mDataProp );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   150
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   151
			/* Feature sorting overrides column specific when off */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   152
			if ( !oSettings.oFeatures.bSort )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   153
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   154
				oCol.bSortable = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   155
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   156
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   157
			/* Check that the class assignment is correct for sorting */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   158
			if ( !oCol.bSortable ||
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   159
				 ($.inArray('asc', oCol.asSorting) == -1 && $.inArray('desc', oCol.asSorting) == -1) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   160
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   161
				oCol.sSortingClass = oSettings.oClasses.sSortableNone;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   162
				oCol.sSortingClassJUI = "";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   163
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   164
			else if ( oCol.bSortable ||
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   165
			          ($.inArray('asc', oCol.asSorting) == -1 && $.inArray('desc', oCol.asSorting) == -1) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   166
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   167
			  oCol.sSortingClass = oSettings.oClasses.sSortable;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   168
			  oCol.sSortingClassJUI = oSettings.oClasses.sSortJUI;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   169
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   170
			else if ( $.inArray('asc', oCol.asSorting) != -1 && $.inArray('desc', oCol.asSorting) == -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   171
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   172
				oCol.sSortingClass = oSettings.oClasses.sSortableAsc;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   173
				oCol.sSortingClassJUI = oSettings.oClasses.sSortJUIAscAllowed;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   174
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   175
			else if ( $.inArray('asc', oCol.asSorting) == -1 && $.inArray('desc', oCol.asSorting) != -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   176
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   177
				oCol.sSortingClass = oSettings.oClasses.sSortableDesc;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   178
				oCol.sSortingClassJUI = oSettings.oClasses.sSortJUIDescAllowed;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   179
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   180
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   181
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   182
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   183
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   184
		 * Adjust the table column widths for new data. Note: you would probably want to 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   185
		 * do a redraw after calling this function!
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   186
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   187
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   188
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   189
		function _fnAdjustColumnSizing ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   190
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   191
			/* Not interested in doing column width calculation if autowidth is disabled */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   192
			if ( oSettings.oFeatures.bAutoWidth === false )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   193
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   194
				return false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   195
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   196
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   197
			_fnCalculateColumnWidths( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   198
			for ( var i=0 , iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   199
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   200
				oSettings.aoColumns[i].nTh.style.width = oSettings.aoColumns[i].sWidth;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   201
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   202
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   203
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   204
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   205
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   206
		 * Covert the index of a visible column to the index in the data array (take account
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   207
		 * of hidden columns)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   208
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   209
		 *  @param {int} iMatch Visible column index to lookup
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   210
		 *  @returns {int} i the data index
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   211
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   212
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   213
		function _fnVisibleToColumnIndex( oSettings, iMatch )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   214
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   215
			var iColumn = -1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   216
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   217
			for ( var i=0 ; i<oSettings.aoColumns.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   218
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   219
				if ( oSettings.aoColumns[i].bVisible === true )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   220
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   221
					iColumn++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   222
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   223
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   224
				if ( iColumn == iMatch )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   225
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   226
					return i;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   227
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   228
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   229
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   230
			return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   231
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   232
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   233
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   234
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   235
		 * Covert the index of an index in the data array and convert it to the visible
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   236
		 *   column index (take account of hidden columns)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   237
		 *  @param {int} iMatch Column index to lookup
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   238
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   239
		 *  @returns {int} i the data index
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   240
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   241
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   242
		function _fnColumnIndexToVisible( oSettings, iMatch )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   243
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   244
			var iVisible = -1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   245
			for ( var i=0 ; i<oSettings.aoColumns.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   246
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   247
				if ( oSettings.aoColumns[i].bVisible === true )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   248
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   249
					iVisible++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   250
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   251
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   252
				if ( i == iMatch )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   253
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   254
					return oSettings.aoColumns[i].bVisible === true ? iVisible : null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   255
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   256
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   257
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   258
			return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   259
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   260
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   261
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   262
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   263
		 * Get the number of visible columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   264
		 *  @returns {int} i the number of visible columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   265
		 *  @param {object} oS dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   266
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   267
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   268
		function _fnVisbleColumns( oS )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   269
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   270
			var iVis = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   271
			for ( var i=0 ; i<oS.aoColumns.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   272
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   273
				if ( oS.aoColumns[i].bVisible === true )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   274
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   275
					iVis++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   276
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   277
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   278
			return iVis;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   279
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   280
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   281
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   282
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   283
		 * Get the sort type based on an input string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   284
		 *  @param {string} sData data we wish to know the type of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   285
		 *  @returns {string} type (defaults to 'string' if no type can be detected)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   286
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   287
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   288
		function _fnDetectType( sData )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   289
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   290
			var aTypes = DataTable.ext.aTypes;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   291
			var iLen = aTypes.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   292
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   293
			for ( var i=0 ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   294
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   295
				var sType = aTypes[i]( sData );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   296
				if ( sType !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   297
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   298
					return sType;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   299
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   300
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   301
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   302
			return 'string';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   303
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   304
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   305
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   306
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   307
		 * Figure out how to reorder a display list
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   308
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   309
		 *  @returns array {int} aiReturn index list for reordering
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   310
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   311
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   312
		function _fnReOrderIndex ( oSettings, sColumns )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   313
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   314
			var aColumns = sColumns.split(',');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   315
			var aiReturn = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   316
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   317
			for ( var i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   318
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   319
				for ( var j=0 ; j<iLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   320
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   321
					if ( oSettings.aoColumns[i].sName == aColumns[j] )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   322
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   323
						aiReturn.push( j );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   324
						break;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   325
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   326
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   327
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   328
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   329
			return aiReturn;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   330
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   331
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   332
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   333
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   334
		 * Get the column ordering that DataTables expects
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   335
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   336
		 *  @returns {string} comma separated list of names
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   337
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   338
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   339
		function _fnColumnOrdering ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   340
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   341
			var sNames = '';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   342
			for ( var i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   343
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   344
				sNames += oSettings.aoColumns[i].sName+',';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   345
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   346
			if ( sNames.length == iLen )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   347
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   348
				return "";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   349
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   350
			return sNames.slice(0, -1);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   351
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   352
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   353
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   354
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   355
		 * Take the column definitions and static columns arrays and calculate how
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   356
		 * they relate to column indexes. The callback function will then apply the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   357
		 * definition found for a column to a suitable configuration object.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   358
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   359
		 *  @param {array} aoColDefs The aoColumnDefs array that is to be applied
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   360
		 *  @param {array} aoCols The aoColumns array that defines columns individually
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   361
		 *  @param {function} fn Callback function - takes two parameters, the calculated
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   362
		 *    column index and the definition for that column.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   363
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   364
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   365
		function _fnApplyColumnDefs( oSettings, aoColDefs, aoCols, fn )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   366
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   367
			var i, iLen, j, jLen, k, kLen;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   368
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   369
			// Column definitions with aTargets
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   370
			if ( aoColDefs )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   371
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   372
				/* Loop over the definitions array - loop in reverse so first instance has priority */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   373
				for ( i=aoColDefs.length-1 ; i>=0 ; i-- )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   374
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   375
					/* Each definition can target multiple columns, as it is an array */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   376
					var aTargets = aoColDefs[i].aTargets;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   377
					if ( !$.isArray( aTargets ) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   378
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   379
						_fnLog( oSettings, 1, 'aTargets must be an array of targets, not a '+(typeof aTargets) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   380
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   381
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   382
					for ( j=0, jLen=aTargets.length ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   383
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   384
						if ( typeof aTargets[j] === 'number' && aTargets[j] >= 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   385
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   386
							/* Add columns that we don't yet know about */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   387
							while( oSettings.aoColumns.length <= aTargets[j] )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   388
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   389
								_fnAddColumn( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   390
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   391
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   392
							/* Integer, basic index */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   393
							fn( aTargets[j], aoColDefs[i] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   394
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   395
						else if ( typeof aTargets[j] === 'number' && aTargets[j] < 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   396
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   397
							/* Negative integer, right to left column counting */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   398
							fn( oSettings.aoColumns.length+aTargets[j], aoColDefs[i] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   399
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   400
						else if ( typeof aTargets[j] === 'string' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   401
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   402
							/* Class name matching on TH element */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   403
							for ( k=0, kLen=oSettings.aoColumns.length ; k<kLen ; k++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   404
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   405
								if ( aTargets[j] == "_all" ||
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   406
								     $(oSettings.aoColumns[k].nTh).hasClass( aTargets[j] ) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   407
								{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   408
									fn( k, aoColDefs[i] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   409
								}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   410
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   411
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   412
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   413
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   414
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   415
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   416
			// Statically defined columns array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   417
			if ( aoCols )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   418
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   419
				for ( i=0, iLen=aoCols.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   420
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   421
					fn( i, aoCols[i] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   422
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   423
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   424
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   425
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   426
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   427
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   428
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   429
		 * Add a data array to the table, creating DOM node etc. This is the parallel to 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   430
		 * _fnGatherData, but for adding rows from a Javascript source, rather than a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   431
		 * DOM source.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   432
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   433
		 *  @param {array} aData data array to be added
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   434
		 *  @returns {int} >=0 if successful (index of new aoData entry), -1 if failed
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   435
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   436
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   437
		function _fnAddData ( oSettings, aDataSupplied )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   438
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   439
			var oCol;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   440
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   441
			/* Take an independent copy of the data source so we can bash it about as we wish */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   442
			var aDataIn = ($.isArray(aDataSupplied)) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   443
				aDataSupplied.slice() :
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   444
				$.extend( true, {}, aDataSupplied );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   445
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   446
			/* Create the object for storing information about this new row */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   447
			var iRow = oSettings.aoData.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   448
			var oData = $.extend( true, {}, DataTable.models.oRow, {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   449
				"_aData": aDataIn
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   450
			} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   451
			oSettings.aoData.push( oData );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   452
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   453
			/* Create the cells */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   454
			var nTd, sThisType;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   455
			for ( var i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   456
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   457
				oCol = oSettings.aoColumns[i];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   458
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   459
				/* Use rendered data for filtering/sorting */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   460
				if ( typeof oCol.fnRender === 'function' && oCol.bUseRendered && oCol.mDataProp !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   461
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   462
					_fnSetCellData( oSettings, iRow, i, _fnRender(oSettings, iRow, i) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   463
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   464
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   465
				/* See if we should auto-detect the column type */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   466
				if ( oCol._bAutoType && oCol.sType != 'string' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   467
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   468
					/* Attempt to auto detect the type - same as _fnGatherData() */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   469
					var sVarType = _fnGetCellData( oSettings, iRow, i, 'type' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   470
					if ( sVarType !== null && sVarType !== '' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   471
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   472
						sThisType = _fnDetectType( sVarType );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   473
						if ( oCol.sType === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   474
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   475
							oCol.sType = sThisType;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   476
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   477
						else if ( oCol.sType != sThisType && oCol.sType != "html" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   478
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   479
							/* String is always the 'fallback' option */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   480
							oCol.sType = 'string';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   481
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   482
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   483
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   484
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   485
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   486
			/* Add to the display array */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   487
			oSettings.aiDisplayMaster.push( iRow );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   488
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   489
			/* Create the DOM imformation */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   490
			if ( !oSettings.oFeatures.bDeferRender )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   491
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   492
				_fnCreateTr( oSettings, iRow );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   493
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   494
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   495
			return iRow;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   496
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   497
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   498
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   499
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   500
		 * Read in the data from the target table from the DOM
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   501
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   502
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   503
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   504
		function _fnGatherData( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   505
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   506
			var iLoop, i, iLen, j, jLen, jInner,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   507
			 	nTds, nTrs, nTd, aLocalData, iThisIndex,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   508
				iRow, iRows, iColumn, iColumns, sNodeName,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   509
				oCol, oData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   510
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   511
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   512
			 * Process by row first
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   513
			 * Add the data object for the whole table - storing the tr node. Note - no point in getting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   514
			 * DOM based data if we are going to go and replace it with Ajax source data.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   515
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   516
			if ( oSettings.bDeferLoading || oSettings.sAjaxSource === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   517
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   518
				nTrs = oSettings.nTBody.childNodes;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   519
				for ( i=0, iLen=nTrs.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   520
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   521
					if ( nTrs[i].nodeName.toUpperCase() == "TR" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   522
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   523
						iThisIndex = oSettings.aoData.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   524
						nTrs[i]._DT_RowIndex = iThisIndex;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   525
						oSettings.aoData.push( $.extend( true, {}, DataTable.models.oRow, {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   526
							"nTr": nTrs[i]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   527
						} ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   528
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   529
						oSettings.aiDisplayMaster.push( iThisIndex );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   530
						nTds = nTrs[i].childNodes;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   531
						jInner = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   532
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   533
						for ( j=0, jLen=nTds.length ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   534
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   535
							sNodeName = nTds[j].nodeName.toUpperCase();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   536
							if ( sNodeName == "TD" || sNodeName == "TH" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   537
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   538
								_fnSetCellData( oSettings, iThisIndex, jInner, $.trim(nTds[j].innerHTML) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   539
								jInner++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   540
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   541
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   542
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   543
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   544
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   545
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   546
			/* Gather in the TD elements of the Table - note that this is basically the same as
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   547
			 * fnGetTdNodes, but that function takes account of hidden columns, which we haven't yet
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   548
			 * setup!
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   549
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   550
			nTrs = _fnGetTrNodes( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   551
			nTds = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   552
			for ( i=0, iLen=nTrs.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   553
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   554
				for ( j=0, jLen=nTrs[i].childNodes.length ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   555
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   556
					nTd = nTrs[i].childNodes[j];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   557
					sNodeName = nTd.nodeName.toUpperCase();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   558
					if ( sNodeName == "TD" || sNodeName == "TH" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   559
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   560
						nTds.push( nTd );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   561
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   562
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   563
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   564
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   565
			/* Now process by column */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   566
			for ( iColumn=0, iColumns=oSettings.aoColumns.length ; iColumn<iColumns ; iColumn++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   567
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   568
				oCol = oSettings.aoColumns[iColumn];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   569
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   570
				/* Get the title of the column - unless there is a user set one */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   571
				if ( oCol.sTitle === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   572
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   573
					oCol.sTitle = oCol.nTh.innerHTML;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   574
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   575
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   576
				var
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   577
					bAutoType = oCol._bAutoType,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   578
					bRender = typeof oCol.fnRender === 'function',
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   579
					bClass = oCol.sClass !== null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   580
					bVisible = oCol.bVisible,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   581
					nCell, sThisType, sRendered, sValType;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   582
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   583
				/* A single loop to rule them all (and be more efficient) */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   584
				if ( bAutoType || bRender || bClass || !bVisible )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   585
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   586
					for ( iRow=0, iRows=oSettings.aoData.length ; iRow<iRows ; iRow++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   587
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   588
						oData = oSettings.aoData[iRow];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   589
						nCell = nTds[ (iRow*iColumns) + iColumn ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   590
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   591
						/* Type detection */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   592
						if ( bAutoType && oCol.sType != 'string' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   593
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   594
							sValType = _fnGetCellData( oSettings, iRow, iColumn, 'type' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   595
							if ( sValType !== '' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   596
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   597
								sThisType = _fnDetectType( sValType );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   598
								if ( oCol.sType === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   599
								{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   600
									oCol.sType = sThisType;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   601
								}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   602
								else if ( oCol.sType != sThisType && 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   603
								          oCol.sType != "html" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   604
								{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   605
									/* String is always the 'fallback' option */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   606
									oCol.sType = 'string';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   607
								}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   608
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   609
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   610
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   611
						if ( typeof oCol.mDataProp === 'function' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   612
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   613
							nCell.innerHTML = _fnGetCellData( oSettings, iRow, iColumn, 'display' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   614
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   615
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   616
						/* Rendering */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   617
						if ( bRender )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   618
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   619
							sRendered = _fnRender( oSettings, iRow, iColumn );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   620
							nCell.innerHTML = sRendered;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   621
							if ( oCol.bUseRendered )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   622
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   623
								/* Use the rendered data for filtering/sorting */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   624
								_fnSetCellData( oSettings, iRow, iColumn, sRendered );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   625
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   626
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   627
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   628
						/* Classes */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   629
						if ( bClass )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   630
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   631
							nCell.className += ' '+oCol.sClass;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   632
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   633
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   634
						/* Column visability */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   635
						if ( !bVisible )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   636
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   637
							oData._anHidden[iColumn] = nCell;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   638
							nCell.parentNode.removeChild( nCell );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   639
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   640
						else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   641
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   642
							oData._anHidden[iColumn] = null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   643
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   644
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   645
						if ( oCol.fnCreatedCell )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   646
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   647
							oCol.fnCreatedCell.call( oSettings.oInstance,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   648
								nCell, _fnGetCellData( oSettings, iRow, iColumn, 'display' ), oData._aData, iRow, iColumn
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   649
							);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   650
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   651
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   652
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   653
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   654
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   655
			/* Row created callbacks */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   656
			if ( oSettings.aoRowCreatedCallback.length !== 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   657
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   658
				for ( i=0, iLen=oSettings.aoData.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   659
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   660
					oData = oSettings.aoData[i];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   661
					_fnCallbackFire( oSettings, 'aoRowCreatedCallback', null, [oData.nTr, oData._aData, i] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   662
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   663
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   664
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   665
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   666
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   667
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   668
		 * Take a TR element and convert it to an index in aoData
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   669
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   670
		 *  @param {node} n the TR element to find
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   671
		 *  @returns {int} index if the node is found, null if not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   672
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   673
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   674
		function _fnNodeToDataIndex( oSettings, n )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   675
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   676
			return (n._DT_RowIndex!==undefined) ? n._DT_RowIndex : null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   677
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   678
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   679
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   680
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   681
		 * Take a TD element and convert it into a column data index (not the visible index)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   682
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   683
		 *  @param {int} iRow The row number the TD/TH can be found in
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   684
		 *  @param {node} n The TD/TH element to find
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   685
		 *  @returns {int} index if the node is found, -1 if not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   686
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   687
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   688
		function _fnNodeToColumnIndex( oSettings, iRow, n )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   689
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   690
			var anCells = _fnGetTdNodes( oSettings, iRow );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   691
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   692
			for ( var i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   693
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   694
				if ( anCells[i] === n )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   695
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   696
					return i;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   697
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   698
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   699
			return -1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   700
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   701
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   702
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   703
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   704
		 * Get an array of data for a given row from the internal data cache
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   705
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   706
		 *  @param {int} iRow aoData row id
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   707
		 *  @param {string} sSpecific data get type ('type' 'filter' 'sort')
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   708
		 *  @returns {array} Data array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   709
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   710
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   711
		function _fnGetRowData( oSettings, iRow, sSpecific )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   712
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   713
			var out = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   714
			for ( var i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   715
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   716
				out.push( _fnGetCellData( oSettings, iRow, i, sSpecific ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   717
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   718
			return out;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   719
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   720
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   721
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   722
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   723
		 * Get the data for a given cell from the internal cache, taking into account data mapping
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   724
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   725
		 *  @param {int} iRow aoData row id
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   726
		 *  @param {int} iCol Column index
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   727
		 *  @param {string} sSpecific data get type ('display', 'type' 'filter' 'sort')
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   728
		 *  @returns {*} Cell data
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   729
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   730
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   731
		function _fnGetCellData( oSettings, iRow, iCol, sSpecific )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   732
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   733
			var sData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   734
			var oCol = oSettings.aoColumns[iCol];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   735
			var oData = oSettings.aoData[iRow]._aData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   736
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   737
			if ( (sData=oCol.fnGetData( oData, sSpecific )) === undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   738
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   739
				if ( oSettings.iDrawError != oSettings.iDraw && oCol.sDefaultContent === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   740
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   741
					_fnLog( oSettings, 0, "Requested unknown parameter '"+oCol.mDataProp+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   742
						"' from the data source for row "+iRow );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   743
					oSettings.iDrawError = oSettings.iDraw;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   744
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   745
				return oCol.sDefaultContent;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   746
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   747
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   748
			/* When the data source is null, we can use default column data */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   749
			if ( sData === null && oCol.sDefaultContent !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   750
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   751
				sData = oCol.sDefaultContent;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   752
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   753
			else if ( typeof sData === 'function' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   754
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   755
				/* If the data source is a function, then we run it and use the return */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   756
				return sData();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   757
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   758
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   759
			if ( sSpecific == 'display' && sData === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   760
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   761
				return '';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   762
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   763
			return sData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   764
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   765
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   766
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   767
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   768
		 * Set the value for a specific cell, into the internal data cache
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   769
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   770
		 *  @param {int} iRow aoData row id
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   771
		 *  @param {int} iCol Column index
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   772
		 *  @param {*} val Value to set
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   773
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   774
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   775
		function _fnSetCellData( oSettings, iRow, iCol, val )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   776
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   777
			var oCol = oSettings.aoColumns[iCol];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   778
			var oData = oSettings.aoData[iRow]._aData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   779
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   780
			oCol.fnSetData( oData, val );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   781
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   782
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   783
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   784
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   785
		 * Return a function that can be used to get data from a source object, taking
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   786
		 * into account the ability to use nested objects as a source
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   787
		 *  @param {string|int|function} mSource The data source for the object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   788
		 *  @returns {function} Data get function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   789
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   790
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   791
		function _fnGetObjectDataFn( mSource )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   792
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   793
			if ( mSource === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   794
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   795
				/* Give an empty string for rendering / sorting etc */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   796
				return function (data, type) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   797
					return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   798
				};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   799
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   800
			else if ( typeof mSource === 'function' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   801
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   802
				return function (data, type) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   803
					return mSource( data, type );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   804
				};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   805
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   806
			else if ( typeof mSource === 'string' && mSource.indexOf('.') != -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   807
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   808
				/* If there is a . in the source string then the data source is in a 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   809
				 * nested object so we loop over the data for each level to get the next
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   810
				 * level down. On each loop we test for undefined, and if found immediatly
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   811
				 * return. This allows entire objects to be missing and sDefaultContent to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   812
				 * be used if defined, rather than throwing an error
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   813
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   814
				var a = mSource.split('.');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   815
				return function (data, type) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   816
					for ( var i=0, iLen=a.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   817
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   818
						data = data[ a[i] ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   819
						if ( data === undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   820
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   821
							return undefined;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   822
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   823
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   824
					return data;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   825
				};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   826
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   827
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   828
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   829
				/* Array or flat object mapping */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   830
				return function (data, type) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   831
					return data[mSource];	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   832
				};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   833
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   834
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   835
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   836
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   837
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   838
		 * Return a function that can be used to set data from a source object, taking
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   839
		 * into account the ability to use nested objects as a source
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   840
		 *  @param {string|int|function} mSource The data source for the object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   841
		 *  @returns {function} Data set function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   842
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   843
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   844
		function _fnSetObjectDataFn( mSource )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   845
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   846
			if ( mSource === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   847
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   848
				/* Nothing to do when the data source is null */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   849
				return function (data, val) {};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   850
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   851
			else if ( typeof mSource === 'function' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   852
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   853
				return function (data, val) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   854
					mSource( data, 'set', val );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   855
				};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   856
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   857
			else if ( typeof mSource === 'string' && mSource.indexOf('.') != -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   858
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   859
				/* Like the get, we need to get data from a nested object.  */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   860
				var a = mSource.split('.');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   861
				return function (data, val) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   862
					for ( var i=0, iLen=a.length-1 ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   863
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   864
						data = data[ a[i] ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   865
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   866
					data[ a[a.length-1] ] = val;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   867
				};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   868
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   869
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   870
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   871
				/* Array or flat object mapping */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   872
				return function (data, val) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   873
					data[mSource] = val;	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   874
				};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   875
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   876
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   877
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   878
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   879
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   880
		 * Return an array with the full table data
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   881
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   882
		 *  @returns array {array} aData Master data array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   883
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   884
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   885
		function _fnGetDataMaster ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   886
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   887
			var aData = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   888
			var iLen = oSettings.aoData.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   889
			for ( var i=0 ; i<iLen; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   890
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   891
				aData.push( oSettings.aoData[i]._aData );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   892
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   893
			return aData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   894
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   895
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   896
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   897
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   898
		 * Nuke the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   899
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   900
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   901
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   902
		function _fnClearTable( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   903
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   904
			oSettings.aoData.splice( 0, oSettings.aoData.length );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   905
			oSettings.aiDisplayMaster.splice( 0, oSettings.aiDisplayMaster.length );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   906
			oSettings.aiDisplay.splice( 0, oSettings.aiDisplay.length );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   907
			_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   908
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   909
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   910
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   911
		 /**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   912
		 * Take an array of integers (index array) and remove a target integer (value - not 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   913
		 * the key!)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   914
		 *  @param {array} a Index array to target
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   915
		 *  @param {int} iTarget value to find
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   916
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   917
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   918
		function _fnDeleteIndex( a, iTarget )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   919
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   920
			var iTargetIndex = -1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   921
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   922
			for ( var i=0, iLen=a.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   923
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   924
				if ( a[i] == iTarget )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   925
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   926
					iTargetIndex = i;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   927
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   928
				else if ( a[i] > iTarget )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   929
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   930
					a[i]--;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   931
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   932
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   933
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   934
			if ( iTargetIndex != -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   935
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   936
				a.splice( iTargetIndex, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   937
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   938
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   939
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   940
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   941
		 /**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   942
		 * Call the developer defined fnRender function for a given cell (row/column) with
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   943
		 * the required parameters and return the result.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   944
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   945
		 *  @param {int} iRow aoData index for the row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   946
		 *  @param {int} iCol aoColumns index for the column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   947
		 *  @returns {*} Return of the developer's fnRender function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   948
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   949
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   950
		function _fnRender( oSettings, iRow, iCol )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   951
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   952
			var oCol = oSettings.aoColumns[iCol];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   953
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   954
			return oCol.fnRender( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   955
				"iDataRow":    iRow,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   956
				"iDataColumn": iCol,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   957
				"oSettings":   oSettings,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   958
				"aData":       oSettings.aoData[iRow]._aData,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   959
				"mDataProp":   oCol.mDataProp
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   960
			}, _fnGetCellData(oSettings, iRow, iCol, 'display') );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   961
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   962
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   963
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   964
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   965
		 * Create a new TR element (and it's TD children) for a row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   966
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   967
		 *  @param {int} iRow Row to consider
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   968
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   969
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   970
		function _fnCreateTr ( oSettings, iRow )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   971
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   972
			var oData = oSettings.aoData[iRow];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   973
			var nTd;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   974
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   975
			if ( oData.nTr === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   976
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   977
				oData.nTr = document.createElement('tr');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   978
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   979
				/* Use a private property on the node to allow reserve mapping from the node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   980
				 * to the aoData array for fast look up
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   981
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   982
				oData.nTr._DT_RowIndex = iRow;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   983
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   984
				/* Special parameters can be given by the data source to be used on the row */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   985
				if ( oData._aData.DT_RowId )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   986
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   987
					oData.nTr.id = oData._aData.DT_RowId;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   988
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   989
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   990
				if ( oData._aData.DT_RowClass )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   991
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   992
					$(oData.nTr).addClass( oData._aData.DT_RowClass );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   993
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   994
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   995
				/* Process each column */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   996
				for ( var i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   997
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   998
					var oCol = oSettings.aoColumns[i];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
   999
					nTd = document.createElement('td');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1000
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1001
					/* Render if needed - if bUseRendered is true then we already have the rendered
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1002
					 * value in the data source - so can just use that
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1003
					 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1004
					nTd.innerHTML = (typeof oCol.fnRender === 'function' && (!oCol.bUseRendered || oCol.mDataProp === null)) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1005
						_fnRender( oSettings, iRow, i ) :
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1006
						_fnGetCellData( oSettings, iRow, i, 'display' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1007
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1008
					/* Add user defined class */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1009
					if ( oCol.sClass !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1010
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1011
						nTd.className = oCol.sClass;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1012
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1013
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1014
					if ( oCol.bVisible )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1015
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1016
						oData.nTr.appendChild( nTd );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1017
						oData._anHidden[i] = null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1018
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1019
					else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1020
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1021
						oData._anHidden[i] = nTd;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1022
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1023
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1024
					if ( oCol.fnCreatedCell )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1025
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1026
						oCol.fnCreatedCell.call( oSettings.oInstance,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1027
							nTd, _fnGetCellData( oSettings, iRow, i, 'display' ), oData._aData, iRow, i
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1028
						);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1029
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1030
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1031
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1032
				_fnCallbackFire( oSettings, 'aoRowCreatedCallback', null, [oData.nTr, oData._aData, iRow] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1033
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1034
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1035
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1036
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1037
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1038
		 * Create the HTML header for the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1039
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1040
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1041
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1042
		function _fnBuildHead( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1043
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1044
			var i, nTh, iLen, j, jLen;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1045
			var iThs = oSettings.nTHead.getElementsByTagName('th').length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1046
			var iCorrector = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1047
			var jqChildren;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1048
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1049
			/* If there is a header in place - then use it - otherwise it's going to get nuked... */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1050
			if ( iThs !== 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1051
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1052
				/* We've got a thead from the DOM, so remove hidden columns and apply width to vis cols */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1053
				for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1054
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1055
					nTh = oSettings.aoColumns[i].nTh;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1056
					nTh.setAttribute('role', 'columnheader');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1057
					if ( oSettings.aoColumns[i].bSortable )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1058
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1059
						nTh.setAttribute('tabindex', oSettings.iTabIndex);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1060
						nTh.setAttribute('aria-controls', oSettings.sTableId);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1061
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1062
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1063
					if ( oSettings.aoColumns[i].sClass !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1064
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1065
						$(nTh).addClass( oSettings.aoColumns[i].sClass );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1066
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1067
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1068
					/* Set the title of the column if it is user defined (not what was auto detected) */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1069
					if ( oSettings.aoColumns[i].sTitle != nTh.innerHTML )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1070
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1071
						nTh.innerHTML = oSettings.aoColumns[i].sTitle;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1072
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1073
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1074
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1075
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1076
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1077
				/* We don't have a header in the DOM - so we are going to have to create one */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1078
				var nTr = document.createElement( "tr" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1079
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1080
				for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1081
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1082
					nTh = oSettings.aoColumns[i].nTh;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1083
					nTh.innerHTML = oSettings.aoColumns[i].sTitle;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1084
					nTh.setAttribute('tabindex', '0');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1085
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1086
					if ( oSettings.aoColumns[i].sClass !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1087
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1088
						$(nTh).addClass( oSettings.aoColumns[i].sClass );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1089
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1090
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1091
					nTr.appendChild( nTh );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1092
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1093
				$(oSettings.nTHead).html( '' )[0].appendChild( nTr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1094
				_fnDetectHeader( oSettings.aoHeader, oSettings.nTHead );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1095
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1096
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1097
			/* ARIA role for the rows */	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1098
			$(oSettings.nTHead).children('tr').attr('role', 'row');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1099
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1100
			/* Add the extra markup needed by jQuery UI's themes */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1101
			if ( oSettings.bJUI )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1102
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1103
				for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1104
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1105
					nTh = oSettings.aoColumns[i].nTh;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1106
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1107
					var nDiv = document.createElement('div');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1108
					nDiv.className = oSettings.oClasses.sSortJUIWrapper;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1109
					$(nTh).contents().appendTo(nDiv);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1110
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1111
					var nSpan = document.createElement('span');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1112
					nSpan.className = oSettings.oClasses.sSortIcon;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1113
					nDiv.appendChild( nSpan );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1114
					nTh.appendChild( nDiv );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1115
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1116
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1117
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1118
			if ( oSettings.oFeatures.bSort )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1119
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1120
				for ( i=0 ; i<oSettings.aoColumns.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1121
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1122
					if ( oSettings.aoColumns[i].bSortable !== false )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1123
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1124
						_fnSortAttachListener( oSettings, oSettings.aoColumns[i].nTh, i );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1125
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1126
					else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1127
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1128
						$(oSettings.aoColumns[i].nTh).addClass( oSettings.oClasses.sSortableNone );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1129
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1130
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1131
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1132
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1133
			/* Deal with the footer - add classes if required */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1134
			if ( oSettings.oClasses.sFooterTH !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1135
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1136
				$(oSettings.nTFoot).children('tr').children('th').addClass( oSettings.oClasses.sFooterTH );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1137
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1138
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1139
			/* Cache the footer elements */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1140
			if ( oSettings.nTFoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1141
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1142
				var anCells = _fnGetUniqueThs( oSettings, null, oSettings.aoFooter );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1143
				for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1144
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1145
					if ( anCells[i] )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1146
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1147
						oSettings.aoColumns[i].nTf = anCells[i];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1148
						if ( oSettings.aoColumns[i].sClass )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1149
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1150
							$(anCells[i]).addClass( oSettings.aoColumns[i].sClass );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1151
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1152
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1153
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1154
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1155
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1156
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1157
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1158
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1159
		 * Draw the header (or footer) element based on the column visibility states. The
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1160
		 * methodology here is to use the layout array from _fnDetectHeader, modified for
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1161
		 * the instantaneous column visibility, to construct the new layout. The grid is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1162
		 * traversed over cell at a time in a rows x columns grid fashion, although each 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1163
		 * cell insert can cover multiple elements in the grid - which is tracks using the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1164
		 * aApplied array. Cell inserts in the grid will only occur where there isn't
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1165
		 * already a cell in that position.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1166
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1167
		 *  @param array {objects} aoSource Layout array from _fnDetectHeader
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1168
		 *  @param {boolean} [bIncludeHidden=false] If true then include the hidden columns in the calc, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1169
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1170
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1171
		function _fnDrawHead( oSettings, aoSource, bIncludeHidden )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1172
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1173
			var i, iLen, j, jLen, k, kLen, n, nLocalTr;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1174
			var aoLocal = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1175
			var aApplied = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1176
			var iColumns = oSettings.aoColumns.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1177
			var iRowspan, iColspan;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1178
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1179
			if (  bIncludeHidden === undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1180
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1181
				bIncludeHidden = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1182
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1183
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1184
			/* Make a copy of the master layout array, but without the visible columns in it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1185
			for ( i=0, iLen=aoSource.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1186
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1187
				aoLocal[i] = aoSource[i].slice();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1188
				aoLocal[i].nTr = aoSource[i].nTr;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1189
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1190
				/* Remove any columns which are currently hidden */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1191
				for ( j=iColumns-1 ; j>=0 ; j-- )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1192
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1193
					if ( !oSettings.aoColumns[j].bVisible && !bIncludeHidden )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1194
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1195
						aoLocal[i].splice( j, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1196
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1197
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1198
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1199
				/* Prep the applied array - it needs an element for each row */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1200
				aApplied.push( [] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1201
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1202
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1203
			for ( i=0, iLen=aoLocal.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1204
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1205
				nLocalTr = aoLocal[i].nTr;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1206
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1207
				/* All cells are going to be replaced, so empty out the row */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1208
				if ( nLocalTr )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1209
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1210
					while( (n = nLocalTr.firstChild) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1211
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1212
						nLocalTr.removeChild( n );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1213
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1214
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1215
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1216
				for ( j=0, jLen=aoLocal[i].length ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1217
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1218
					iRowspan = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1219
					iColspan = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1220
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1221
					/* Check to see if there is already a cell (row/colspan) covering our target
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1222
					 * insert point. If there is, then there is nothing to do.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1223
					 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1224
					if ( aApplied[i][j] === undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1225
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1226
						nLocalTr.appendChild( aoLocal[i][j].cell );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1227
						aApplied[i][j] = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1228
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1229
						/* Expand the cell to cover as many rows as needed */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1230
						while ( aoLocal[i+iRowspan] !== undefined &&
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1231
						        aoLocal[i][j].cell == aoLocal[i+iRowspan][j].cell )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1232
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1233
							aApplied[i+iRowspan][j] = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1234
							iRowspan++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1235
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1236
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1237
						/* Expand the cell to cover as many columns as needed */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1238
						while ( aoLocal[i][j+iColspan] !== undefined &&
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1239
						        aoLocal[i][j].cell == aoLocal[i][j+iColspan].cell )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1240
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1241
							/* Must update the applied array over the rows for the columns */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1242
							for ( k=0 ; k<iRowspan ; k++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1243
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1244
								aApplied[i+k][j+iColspan] = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1245
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1246
							iColspan++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1247
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1248
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1249
						/* Do the actual expansion in the DOM */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1250
						aoLocal[i][j].cell.rowSpan = iRowspan;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1251
						aoLocal[i][j].cell.colSpan = iColspan;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1252
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1253
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1254
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1255
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1256
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1257
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1258
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1259
		 * Insert the required TR nodes into the table for display
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1260
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1261
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1262
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1263
		function _fnDraw( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1264
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1265
			var i, iLen, n;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1266
			var anRows = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1267
			var iRowCount = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1268
			var iStripes = oSettings.asStripeClasses.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1269
			var iOpenRows = oSettings.aoOpenRows.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1270
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1271
			/* Provide a pre-callback function which can be used to cancel the draw is false is returned */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1272
			var aPreDraw = _fnCallbackFire( oSettings, 'aoPreDrawCallback', 'preDraw', [oSettings] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1273
			if ( $.inArray( false, aPreDraw ) !== -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1274
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1275
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1276
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1277
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1278
			oSettings.bDrawing = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1279
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1280
			/* Check and see if we have an initial draw position from state saving */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1281
			if ( oSettings.iInitDisplayStart !== undefined && oSettings.iInitDisplayStart != -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1282
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1283
				if ( oSettings.oFeatures.bServerSide )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1284
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1285
					oSettings._iDisplayStart = oSettings.iInitDisplayStart;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1286
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1287
				else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1288
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1289
					oSettings._iDisplayStart = (oSettings.iInitDisplayStart >= oSettings.fnRecordsDisplay()) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1290
						0 : oSettings.iInitDisplayStart;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1291
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1292
				oSettings.iInitDisplayStart = -1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1293
				_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1294
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1295
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1296
			/* Server-side processing draw intercept */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1297
			if ( oSettings.bDeferLoading )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1298
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1299
				oSettings.bDeferLoading = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1300
				oSettings.iDraw++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1301
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1302
			else if ( !oSettings.oFeatures.bServerSide )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1303
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1304
				oSettings.iDraw++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1305
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1306
			else if ( !oSettings.bDestroying && !_fnAjaxUpdate( oSettings ) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1307
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1308
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1309
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1310
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1311
			if ( oSettings.aiDisplay.length !== 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1312
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1313
				var iStart = oSettings._iDisplayStart;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1314
				var iEnd = oSettings._iDisplayEnd;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1315
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1316
				if ( oSettings.oFeatures.bServerSide )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1317
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1318
					iStart = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1319
					iEnd = oSettings.aoData.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1320
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1321
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1322
				for ( var j=iStart ; j<iEnd ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1323
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1324
					var aoData = oSettings.aoData[ oSettings.aiDisplay[j] ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1325
					if ( aoData.nTr === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1326
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1327
						_fnCreateTr( oSettings, oSettings.aiDisplay[j] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1328
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1329
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1330
					var nRow = aoData.nTr;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1331
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1332
					/* Remove the old striping classes and then add the new one */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1333
					if ( iStripes !== 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1334
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1335
						var sStripe = oSettings.asStripeClasses[ iRowCount % iStripes ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1336
						if ( aoData._sRowStripe != sStripe )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1337
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1338
							$(nRow).removeClass( aoData._sRowStripe ).addClass( sStripe );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1339
							aoData._sRowStripe = sStripe;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1340
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1341
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1342
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1343
					/* Row callback functions - might want to manipule the row */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1344
					_fnCallbackFire( oSettings, 'aoRowCallback', null, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1345
						[nRow, oSettings.aoData[ oSettings.aiDisplay[j] ]._aData, iRowCount, j] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1346
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1347
					anRows.push( nRow );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1348
					iRowCount++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1349
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1350
					/* If there is an open row - and it is attached to this parent - attach it on redraw */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1351
					if ( iOpenRows !== 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1352
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1353
						for ( var k=0 ; k<iOpenRows ; k++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1354
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1355
							if ( nRow == oSettings.aoOpenRows[k].nParent )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1356
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1357
								anRows.push( oSettings.aoOpenRows[k].nTr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1358
								break;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1359
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1360
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1361
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1362
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1363
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1364
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1365
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1366
				/* Table is empty - create a row with an empty message in it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1367
				anRows[ 0 ] = document.createElement( 'tr' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1368
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1369
				if ( oSettings.asStripeClasses[0] )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1370
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1371
					anRows[ 0 ].className = oSettings.asStripeClasses[0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1372
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1373
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1374
				var sZero = oSettings.oLanguage.sZeroRecords.replace(
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1375
					'_MAX_', oSettings.fnFormatNumber(oSettings.fnRecordsTotal()) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1376
				if ( oSettings.iDraw == 1 && oSettings.sAjaxSource !== null && !oSettings.oFeatures.bServerSide )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1377
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1378
					sZero = oSettings.oLanguage.sLoadingRecords;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1379
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1380
				else if ( oSettings.oLanguage.sEmptyTable && oSettings.fnRecordsTotal() === 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1381
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1382
					sZero = oSettings.oLanguage.sEmptyTable;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1383
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1384
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1385
				var nTd = document.createElement( 'td' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1386
				nTd.setAttribute( 'valign', "top" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1387
				nTd.colSpan = _fnVisbleColumns( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1388
				nTd.className = oSettings.oClasses.sRowEmpty;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1389
				nTd.innerHTML = sZero;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1390
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1391
				anRows[ iRowCount ].appendChild( nTd );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1392
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1393
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1394
			/* Header and footer callbacks */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1395
			_fnCallbackFire( oSettings, 'aoHeaderCallback', 'header', [ $(oSettings.nTHead).children('tr')[0], 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1396
				_fnGetDataMaster( oSettings ), oSettings._iDisplayStart, oSettings.fnDisplayEnd(), oSettings.aiDisplay ] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1397
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1398
			_fnCallbackFire( oSettings, 'aoFooterCallback', 'footer', [ $(oSettings.nTFoot).children('tr')[0], 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1399
				_fnGetDataMaster( oSettings ), oSettings._iDisplayStart, oSettings.fnDisplayEnd(), oSettings.aiDisplay ] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1400
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1401
			/* 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1402
			 * Need to remove any old row from the display - note we can't just empty the tbody using
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1403
			 * $().html('') since this will unbind the jQuery event handlers (even although the node 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1404
			 * still exists!) - equally we can't use innerHTML, since IE throws an exception.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1405
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1406
			var
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1407
				nAddFrag = document.createDocumentFragment(),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1408
				nRemoveFrag = document.createDocumentFragment(),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1409
				nBodyPar, nTrs;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1410
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1411
			if ( oSettings.nTBody )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1412
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1413
				nBodyPar = oSettings.nTBody.parentNode;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1414
				nRemoveFrag.appendChild( oSettings.nTBody );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1415
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1416
				/* When doing infinite scrolling, only remove child rows when sorting, filtering or start
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1417
				 * up. When not infinite scroll, always do it.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1418
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1419
				if ( !oSettings.oScroll.bInfinite || !oSettings._bInitComplete ||
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1420
				 	oSettings.bSorted || oSettings.bFiltered )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1421
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1422
					while( (n = oSettings.nTBody.firstChild) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1423
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1424
						oSettings.nTBody.removeChild( n );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1425
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1426
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1427
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1428
				/* Put the draw table into the dom */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1429
				for ( i=0, iLen=anRows.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1430
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1431
					nAddFrag.appendChild( anRows[i] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1432
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1433
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1434
				oSettings.nTBody.appendChild( nAddFrag );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1435
				if ( nBodyPar !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1436
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1437
					nBodyPar.appendChild( oSettings.nTBody );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1438
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1439
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1440
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1441
			/* Call all required callback functions for the end of a draw */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1442
			_fnCallbackFire( oSettings, 'aoDrawCallback', 'draw', [oSettings] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1443
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1444
			/* Draw is complete, sorting and filtering must be as well */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1445
			oSettings.bSorted = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1446
			oSettings.bFiltered = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1447
			oSettings.bDrawing = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1448
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1449
			if ( oSettings.oFeatures.bServerSide )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1450
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1451
				_fnProcessingDisplay( oSettings, false );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1452
				if ( !oSettings._bInitComplete )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1453
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1454
					_fnInitComplete( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1455
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1456
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1457
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1458
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1459
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1460
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1461
		 * Redraw the table - taking account of the various features which are enabled
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1462
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1463
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1464
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1465
		function _fnReDraw( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1466
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1467
			if ( oSettings.oFeatures.bSort )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1468
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1469
				/* Sorting will refilter and draw for us */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1470
				_fnSort( oSettings, oSettings.oPreviousSearch );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1471
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1472
			else if ( oSettings.oFeatures.bFilter )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1473
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1474
				/* Filtering will redraw for us */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1475
				_fnFilterComplete( oSettings, oSettings.oPreviousSearch );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1476
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1477
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1478
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1479
				_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1480
				_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1481
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1482
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1483
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1484
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1485
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1486
		 * Add the options to the page HTML for the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1487
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1488
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1489
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1490
		function _fnAddOptionsHtml ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1491
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1492
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1493
			 * Create a temporary, empty, div which we can later on replace with what we have generated
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1494
			 * we do it this way to rendering the 'options' html offline - speed :-)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1495
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1496
			var nHolding = $('<div></div>')[0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1497
			oSettings.nTable.parentNode.insertBefore( nHolding, oSettings.nTable );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1498
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1499
			/* 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1500
			 * All DataTables are wrapped in a div
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1501
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1502
			oSettings.nTableWrapper = $('<div id="'+oSettings.sTableId+'_wrapper" class="'+oSettings.oClasses.sWrapper+'" role="grid"></div>')[0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1503
			oSettings.nTableReinsertBefore = oSettings.nTable.nextSibling;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1504
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1505
			/* Track where we want to insert the option */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1506
			var nInsertNode = oSettings.nTableWrapper;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1507
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1508
			/* Loop over the user set positioning and place the elements as needed */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1509
			var aDom = oSettings.sDom.split('');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1510
			var nTmp, iPushFeature, cOption, nNewNode, cNext, sAttr, j;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1511
			for ( var i=0 ; i<aDom.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1512
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1513
				iPushFeature = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1514
				cOption = aDom[i];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1515
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1516
				if ( cOption == '<' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1517
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1518
					/* New container div */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1519
					nNewNode = $('<div></div>')[0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1520
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1521
					/* Check to see if we should append an id and/or a class name to the container */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1522
					cNext = aDom[i+1];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1523
					if ( cNext == "'" || cNext == '"' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1524
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1525
						sAttr = "";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1526
						j = 2;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1527
						while ( aDom[i+j] != cNext )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1528
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1529
							sAttr += aDom[i+j];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1530
							j++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1531
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1532
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1533
						/* Replace jQuery UI constants */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1534
						if ( sAttr == "H" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1535
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1536
							sAttr = "fg-toolbar ui-toolbar ui-widget-header ui-corner-tl ui-corner-tr ui-helper-clearfix";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1537
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1538
						else if ( sAttr == "F" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1539
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1540
							sAttr = "fg-toolbar ui-toolbar ui-widget-header ui-corner-bl ui-corner-br ui-helper-clearfix";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1541
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1542
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1543
						/* The attribute can be in the format of "#id.class", "#id" or "class" This logic
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1544
						 * breaks the string into parts and applies them as needed
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1545
						 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1546
						if ( sAttr.indexOf('.') != -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1547
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1548
							var aSplit = sAttr.split('.');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1549
							nNewNode.id = aSplit[0].substr(1, aSplit[0].length-1);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1550
							nNewNode.className = aSplit[1];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1551
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1552
						else if ( sAttr.charAt(0) == "#" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1553
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1554
							nNewNode.id = sAttr.substr(1, sAttr.length-1);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1555
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1556
						else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1557
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1558
							nNewNode.className = sAttr;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1559
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1560
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1561
						i += j; /* Move along the position array */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1562
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1563
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1564
					nInsertNode.appendChild( nNewNode );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1565
					nInsertNode = nNewNode;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1566
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1567
				else if ( cOption == '>' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1568
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1569
					/* End container div */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1570
					nInsertNode = nInsertNode.parentNode;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1571
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1572
				else if ( cOption == 'l' && oSettings.oFeatures.bPaginate && oSettings.oFeatures.bLengthChange )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1573
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1574
					/* Length */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1575
					nTmp = _fnFeatureHtmlLength( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1576
					iPushFeature = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1577
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1578
				else if ( cOption == 'f' && oSettings.oFeatures.bFilter )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1579
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1580
					/* Filter */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1581
					nTmp = _fnFeatureHtmlFilter( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1582
					iPushFeature = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1583
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1584
				else if ( cOption == 'r' && oSettings.oFeatures.bProcessing )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1585
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1586
					/* pRocessing */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1587
					nTmp = _fnFeatureHtmlProcessing( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1588
					iPushFeature = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1589
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1590
				else if ( cOption == 't' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1591
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1592
					/* Table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1593
					nTmp = _fnFeatureHtmlTable( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1594
					iPushFeature = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1595
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1596
				else if ( cOption ==  'i' && oSettings.oFeatures.bInfo )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1597
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1598
					/* Info */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1599
					nTmp = _fnFeatureHtmlInfo( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1600
					iPushFeature = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1601
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1602
				else if ( cOption == 'p' && oSettings.oFeatures.bPaginate )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1603
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1604
					/* Pagination */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1605
					nTmp = _fnFeatureHtmlPaginate( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1606
					iPushFeature = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1607
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1608
				else if ( DataTable.ext.aoFeatures.length !== 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1609
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1610
					/* Plug-in features */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1611
					var aoFeatures = DataTable.ext.aoFeatures;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1612
					for ( var k=0, kLen=aoFeatures.length ; k<kLen ; k++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1613
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1614
						if ( cOption == aoFeatures[k].cFeature )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1615
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1616
							nTmp = aoFeatures[k].fnInit( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1617
							if ( nTmp )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1618
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1619
								iPushFeature = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1620
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1621
							break;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1622
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1623
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1624
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1625
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1626
				/* Add to the 2D features array */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1627
				if ( iPushFeature == 1 && nTmp !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1628
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1629
					if ( typeof oSettings.aanFeatures[cOption] !== 'object' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1630
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1631
						oSettings.aanFeatures[cOption] = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1632
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1633
					oSettings.aanFeatures[cOption].push( nTmp );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1634
					nInsertNode.appendChild( nTmp );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1635
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1636
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1637
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1638
			/* Built our DOM structure - replace the holding div with what we want */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1639
			nHolding.parentNode.replaceChild( oSettings.nTableWrapper, nHolding );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1640
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1641
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1642
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1643
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1644
		 * Use the DOM source to create up an array of header cells. The idea here is to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1645
		 * create a layout grid (array) of rows x columns, which contains a reference
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1646
		 * to the cell that that point in the grid (regardless of col/rowspan), such that
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1647
		 * any column / row could be removed and the new grid constructed
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1648
		 *  @param array {object} aLayout Array to store the calculated layout in
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1649
		 *  @param {node} nThead The header/footer element for the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1650
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1651
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1652
		function _fnDetectHeader ( aLayout, nThead )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1653
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1654
			var nTrs = $(nThead).children('tr');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1655
			var nCell;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1656
			var i, j, k, l, iLen, jLen, iColShifted;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1657
			var fnShiftCol = function ( a, i, j ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1658
				while ( a[i][j] ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1659
					j++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1660
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1661
				return j;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1662
			};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1663
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1664
			aLayout.splice( 0, aLayout.length );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1665
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1666
			/* We know how many rows there are in the layout - so prep it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1667
			for ( i=0, iLen=nTrs.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1668
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1669
				aLayout.push( [] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1670
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1671
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1672
			/* Calculate a layout array */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1673
			for ( i=0, iLen=nTrs.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1674
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1675
				var iColumn = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1676
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1677
				/* For every cell in the row... */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1678
				for ( j=0, jLen=nTrs[i].childNodes.length ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1679
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1680
					nCell = nTrs[i].childNodes[j];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1681
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1682
					if ( nCell.nodeName.toUpperCase() == "TD" ||
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1683
					     nCell.nodeName.toUpperCase() == "TH" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1684
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1685
						/* Get the col and rowspan attributes from the DOM and sanitise them */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1686
						var iColspan = nCell.getAttribute('colspan') * 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1687
						var iRowspan = nCell.getAttribute('rowspan') * 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1688
						iColspan = (!iColspan || iColspan===0 || iColspan===1) ? 1 : iColspan;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1689
						iRowspan = (!iRowspan || iRowspan===0 || iRowspan===1) ? 1 : iRowspan;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1690
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1691
						/* There might be colspan cells already in this row, so shift our target 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1692
						 * accordingly
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1693
						 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1694
						iColShifted = fnShiftCol( aLayout, i, iColumn );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1695
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1696
						/* If there is col / rowspan, copy the information into the layout grid */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1697
						for ( l=0 ; l<iColspan ; l++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1698
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1699
							for ( k=0 ; k<iRowspan ; k++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1700
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1701
								aLayout[i+k][iColShifted+l] = {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1702
									"cell": nCell,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1703
									"unique": iColspan == 1 ? true : false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1704
								};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1705
								aLayout[i+k].nTr = nTrs[i];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1706
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1707
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1708
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1709
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1710
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1711
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1712
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1713
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1714
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1715
		 * Get an array of unique th elements, one for each column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1716
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1717
		 *  @param {node} nHeader automatically detect the layout from this node - optional
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1718
		 *  @param {array} aLayout thead/tfoot layout from _fnDetectHeader - optional
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1719
		 *  @returns array {node} aReturn list of unique ths
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1720
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1721
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1722
		function _fnGetUniqueThs ( oSettings, nHeader, aLayout )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1723
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1724
			var aReturn = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1725
			if ( !aLayout )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1726
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1727
				aLayout = oSettings.aoHeader;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1728
				if ( nHeader )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1729
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1730
					aLayout = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1731
					_fnDetectHeader( aLayout, nHeader );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1732
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1733
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1734
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1735
			for ( var i=0, iLen=aLayout.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1736
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1737
				for ( var j=0, jLen=aLayout[i].length ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1738
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1739
					if ( aLayout[i][j].unique && 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1740
						 (!aReturn[j] || !oSettings.bSortCellsTop) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1741
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1742
						aReturn[j] = aLayout[i][j].cell;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1743
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1744
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1745
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1746
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1747
			return aReturn;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1748
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1749
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1750
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1751
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1752
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1753
		 * Update the table using an Ajax call
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1754
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1755
		 *  @returns {boolean} Block the table drawing or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1756
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1757
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1758
		function _fnAjaxUpdate( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1759
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1760
			if ( oSettings.bAjaxDataGet )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1761
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1762
				oSettings.iDraw++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1763
				_fnProcessingDisplay( oSettings, true );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1764
				var iColumns = oSettings.aoColumns.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1765
				var aoData = _fnAjaxParameters( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1766
				_fnServerParams( oSettings, aoData );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1767
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1768
				oSettings.fnServerData.call( oSettings.oInstance, oSettings.sAjaxSource, aoData,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1769
					function(json) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1770
						_fnAjaxUpdateDraw( oSettings, json );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1771
					}, oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1772
				return false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1773
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1774
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1775
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1776
				return true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1777
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1778
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1779
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1780
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1781
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1782
		 * Build up the parameters in an object needed for a server-side processing request
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1783
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1784
		 *  @returns {bool} block the table drawing or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1785
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1786
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1787
		function _fnAjaxParameters( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1788
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1789
			var iColumns = oSettings.aoColumns.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1790
			var aoData = [], mDataProp;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1791
			var i;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1792
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1793
			aoData.push( { "name": "sEcho",          "value": oSettings.iDraw } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1794
			aoData.push( { "name": "iColumns",       "value": iColumns } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1795
			aoData.push( { "name": "sColumns",       "value": _fnColumnOrdering(oSettings) } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1796
			aoData.push( { "name": "iDisplayStart",  "value": oSettings._iDisplayStart } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1797
			aoData.push( { "name": "iDisplayLength", "value": oSettings.oFeatures.bPaginate !== false ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1798
				oSettings._iDisplayLength : -1 } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1799
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1800
			for ( i=0 ; i<iColumns ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1801
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1802
			  mDataProp = oSettings.aoColumns[i].mDataProp;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1803
				aoData.push( { "name": "mDataProp_"+i, "value": typeof(mDataProp)==="function" ? 'function' : mDataProp } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1804
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1805
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1806
			/* Filtering */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1807
			if ( oSettings.oFeatures.bFilter !== false )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1808
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1809
				aoData.push( { "name": "sSearch", "value": oSettings.oPreviousSearch.sSearch } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1810
				aoData.push( { "name": "bRegex",  "value": oSettings.oPreviousSearch.bRegex } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1811
				for ( i=0 ; i<iColumns ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1812
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1813
					aoData.push( { "name": "sSearch_"+i,     "value": oSettings.aoPreSearchCols[i].sSearch } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1814
					aoData.push( { "name": "bRegex_"+i,      "value": oSettings.aoPreSearchCols[i].bRegex } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1815
					aoData.push( { "name": "bSearchable_"+i, "value": oSettings.aoColumns[i].bSearchable } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1816
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1817
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1818
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1819
			/* Sorting */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1820
			if ( oSettings.oFeatures.bSort !== false )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1821
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1822
				var iFixed = oSettings.aaSortingFixed !== null ? oSettings.aaSortingFixed.length : 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1823
				var iUser = oSettings.aaSorting.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1824
				aoData.push( { "name": "iSortingCols",   "value": iFixed+iUser } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1825
				for ( i=0 ; i<iFixed ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1826
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1827
					aoData.push( { "name": "iSortCol_"+i,  "value": oSettings.aaSortingFixed[i][0] } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1828
					aoData.push( { "name": "sSortDir_"+i,  "value": oSettings.aaSortingFixed[i][1] } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1829
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1830
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1831
				for ( i=0 ; i<iUser ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1832
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1833
					aoData.push( { "name": "iSortCol_"+(i+iFixed),  "value": oSettings.aaSorting[i][0] } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1834
					aoData.push( { "name": "sSortDir_"+(i+iFixed),  "value": oSettings.aaSorting[i][1] } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1835
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1836
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1837
				for ( i=0 ; i<iColumns ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1838
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1839
					aoData.push( { "name": "bSortable_"+i,  "value": oSettings.aoColumns[i].bSortable } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1840
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1841
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1842
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1843
			return aoData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1844
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1845
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1846
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1847
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1848
		 * Add Ajax parameters from plugins
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1849
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1850
		 *  @param array {objects} aoData name/value pairs to send to the server
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1851
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1852
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1853
		function _fnServerParams( oSettings, aoData )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1854
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1855
			_fnCallbackFire( oSettings, 'aoServerParams', 'serverParams', [aoData] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1856
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1857
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1858
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1859
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1860
		 * Data the data from the server (nuking the old) and redraw the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1861
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1862
		 *  @param {object} json json data return from the server.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1863
		 *  @param {string} json.sEcho Tracking flag for DataTables to match requests
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1864
		 *  @param {int} json.iTotalRecords Number of records in the data set, not accounting for filtering
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1865
		 *  @param {int} json.iTotalDisplayRecords Number of records in the data set, accounting for filtering
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1866
		 *  @param {array} json.aaData The data to display on this page
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1867
		 *  @param {string} [json.sColumns] Column ordering (sName, comma separated)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1868
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1869
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1870
		function _fnAjaxUpdateDraw ( oSettings, json )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1871
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1872
			if ( json.sEcho !== undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1873
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1874
				/* Protect against old returns over-writing a new one. Possible when you get
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1875
				 * very fast interaction, and later queires are completed much faster
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1876
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1877
				if ( json.sEcho*1 < oSettings.iDraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1878
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1879
					return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1880
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1881
				else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1882
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1883
					oSettings.iDraw = json.sEcho * 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1884
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1885
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1886
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1887
			if ( !oSettings.oScroll.bInfinite ||
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1888
				   (oSettings.oScroll.bInfinite && (oSettings.bSorted || oSettings.bFiltered)) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1889
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1890
				_fnClearTable( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1891
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1892
			oSettings._iRecordsTotal = parseInt(json.iTotalRecords, 10);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1893
			oSettings._iRecordsDisplay = parseInt(json.iTotalDisplayRecords, 10);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1894
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1895
			/* Determine if reordering is required */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1896
			var sOrdering = _fnColumnOrdering(oSettings);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1897
			var bReOrder = (json.sColumns !== undefined && sOrdering !== "" && json.sColumns != sOrdering );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1898
			var aiIndex;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1899
			if ( bReOrder )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1900
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1901
				aiIndex = _fnReOrderIndex( oSettings, json.sColumns );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1902
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1903
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1904
			var aData = _fnGetObjectDataFn( oSettings.sAjaxDataProp )( json );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1905
			for ( var i=0, iLen=aData.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1906
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1907
				if ( bReOrder )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1908
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1909
					/* If we need to re-order, then create a new array with the correct order and add it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1910
					var aDataSorted = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1911
					for ( var j=0, jLen=oSettings.aoColumns.length ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1912
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1913
						aDataSorted.push( aData[i][ aiIndex[j] ] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1914
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1915
					_fnAddData( oSettings, aDataSorted );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1916
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1917
				else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1918
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1919
					/* No re-order required, sever got it "right" - just straight add */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1920
					_fnAddData( oSettings, aData[i] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1921
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1922
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1923
			oSettings.aiDisplay = oSettings.aiDisplayMaster.slice();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1924
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1925
			oSettings.bAjaxDataGet = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1926
			_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1927
			oSettings.bAjaxDataGet = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1928
			_fnProcessingDisplay( oSettings, false );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1929
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1930
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1931
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1932
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1933
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1934
		 * Generate the node required for filtering text
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1935
		 *  @returns {node} Filter control element
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1936
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1937
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1938
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1939
		function _fnFeatureHtmlFilter ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1940
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1941
			var oPreviousSearch = oSettings.oPreviousSearch;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1942
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1943
			var sSearchStr = oSettings.oLanguage.sSearch;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1944
			sSearchStr = (sSearchStr.indexOf('_INPUT_') !== -1) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1945
			  sSearchStr.replace('_INPUT_', '<input type="text" />') :
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1946
			  sSearchStr==="" ? '<input type="text" />' : sSearchStr+' <input type="text" />';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1947
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1948
			var nFilter = document.createElement( 'div' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1949
			nFilter.className = oSettings.oClasses.sFilter;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1950
			nFilter.innerHTML = '<label>'+sSearchStr+'</label>';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1951
			if ( !oSettings.aanFeatures.f )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1952
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1953
				nFilter.id = oSettings.sTableId+'_filter';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1954
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1955
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1956
			var jqFilter = $("input", nFilter);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1957
			jqFilter.val( oPreviousSearch.sSearch.replace('"','&quot;') );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1958
			jqFilter.bind( 'keyup.DT', function(e) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1959
				/* Update all other filter input elements for the new display */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1960
				var n = oSettings.aanFeatures.f;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1961
				for ( var i=0, iLen=n.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1962
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1963
					if ( n[i] != $(this).parents('div.dataTables_filter')[0] )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1964
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1965
						$('input', n[i]).val( this.value );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1966
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1967
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1968
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1969
				/* Now do the filter */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1970
				if ( this.value != oPreviousSearch.sSearch )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1971
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1972
					_fnFilterComplete( oSettings, { 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1973
						"sSearch": this.value, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1974
						"bRegex": oPreviousSearch.bRegex,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1975
						"bSmart": oPreviousSearch.bSmart ,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1976
						"bCaseInsensitive": oPreviousSearch.bCaseInsensitive 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1977
					} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1978
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1979
			} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1980
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1981
			jqFilter
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1982
				.attr('aria-controls', oSettings.sTableId)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1983
				.bind( 'keypress.DT', function(e) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1984
					/* Prevent form submission */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1985
					if ( e.keyCode == 13 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1986
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1987
						return false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1988
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1989
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1990
			);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1991
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1992
			return nFilter;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1993
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1994
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1995
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1996
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1997
		 * Filter the table using both the global filter and column based filtering
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1998
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  1999
		 *  @param {object} oSearch search information
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2000
		 *  @param {int} [iForce] force a research of the master array (1) or not (undefined or 0)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2001
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2002
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2003
		function _fnFilterComplete ( oSettings, oInput, iForce )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2004
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2005
			var oPrevSearch = oSettings.oPreviousSearch;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2006
			var aoPrevSearch = oSettings.aoPreSearchCols;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2007
			var fnSaveFilter = function ( oFilter ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2008
				/* Save the filtering values */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2009
				oPrevSearch.sSearch = oFilter.sSearch;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2010
				oPrevSearch.bRegex = oFilter.bRegex;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2011
				oPrevSearch.bSmart = oFilter.bSmart;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2012
				oPrevSearch.bCaseInsensitive = oFilter.bCaseInsensitive;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2013
			};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2014
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2015
			/* In server-side processing all filtering is done by the server, so no point hanging around here */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2016
			if ( !oSettings.oFeatures.bServerSide )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2017
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2018
				/* Global filter */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2019
				_fnFilter( oSettings, oInput.sSearch, iForce, oInput.bRegex, oInput.bSmart, oInput.bCaseInsensitive );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2020
				fnSaveFilter( oInput );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2021
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2022
				/* Now do the individual column filter */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2023
				for ( var i=0 ; i<oSettings.aoPreSearchCols.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2024
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2025
					_fnFilterColumn( oSettings, aoPrevSearch[i].sSearch, i, aoPrevSearch[i].bRegex, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2026
						aoPrevSearch[i].bSmart, aoPrevSearch[i].bCaseInsensitive );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2027
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2028
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2029
				/* Custom filtering */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2030
				_fnFilterCustom( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2031
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2032
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2033
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2034
				fnSaveFilter( oInput );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2035
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2036
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2037
			/* Tell the draw function we have been filtering */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2038
			oSettings.bFiltered = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2039
			$(oSettings.oInstance).trigger('filter', oSettings);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2040
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2041
			/* Redraw the table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2042
			oSettings._iDisplayStart = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2043
			_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2044
			_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2045
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2046
			/* Rebuild search array 'offline' */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2047
			_fnBuildSearchArray( oSettings, 0 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2048
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2049
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2050
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2051
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2052
		 * Apply custom filtering functions
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2053
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2054
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2055
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2056
		function _fnFilterCustom( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2057
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2058
			var afnFilters = DataTable.ext.afnFiltering;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2059
			for ( var i=0, iLen=afnFilters.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2060
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2061
				var iCorrector = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2062
				for ( var j=0, jLen=oSettings.aiDisplay.length ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2063
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2064
					var iDisIndex = oSettings.aiDisplay[j-iCorrector];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2065
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2066
					/* Check if we should use this row based on the filtering function */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2067
					if ( !afnFilters[i]( oSettings, _fnGetRowData( oSettings, iDisIndex, 'filter' ), iDisIndex ) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2068
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2069
						oSettings.aiDisplay.splice( j-iCorrector, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2070
						iCorrector++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2071
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2072
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2073
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2074
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2075
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2076
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2077
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2078
		 * Filter the table on a per-column basis
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2079
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2080
		 *  @param {string} sInput string to filter on
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2081
		 *  @param {int} iColumn column to filter
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2082
		 *  @param {bool} bRegex treat search string as a regular expression or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2083
		 *  @param {bool} bSmart use smart filtering or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2084
		 *  @param {bool} bCaseInsensitive Do case insenstive matching or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2085
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2086
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2087
		function _fnFilterColumn ( oSettings, sInput, iColumn, bRegex, bSmart, bCaseInsensitive )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2088
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2089
			if ( sInput === "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2090
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2091
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2092
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2093
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2094
			var iIndexCorrector = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2095
			var rpSearch = _fnFilterCreateSearch( sInput, bRegex, bSmart, bCaseInsensitive );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2096
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2097
			for ( var i=oSettings.aiDisplay.length-1 ; i>=0 ; i-- )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2098
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2099
				var sData = _fnDataToSearch( _fnGetCellData( oSettings, oSettings.aiDisplay[i], iColumn, 'filter' ),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2100
					oSettings.aoColumns[iColumn].sType );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2101
				if ( ! rpSearch.test( sData ) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2102
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2103
					oSettings.aiDisplay.splice( i, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2104
					iIndexCorrector++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2105
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2106
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2107
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2108
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2109
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2110
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2111
		 * Filter the data table based on user input and draw the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2112
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2113
		 *  @param {string} sInput string to filter on
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2114
		 *  @param {int} iForce optional - force a research of the master array (1) or not (undefined or 0)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2115
		 *  @param {bool} bRegex treat as a regular expression or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2116
		 *  @param {bool} bSmart perform smart filtering or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2117
		 *  @param {bool} bCaseInsensitive Do case insenstive matching or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2118
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2119
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2120
		function _fnFilter( oSettings, sInput, iForce, bRegex, bSmart, bCaseInsensitive )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2121
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2122
			var i;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2123
			var rpSearch = _fnFilterCreateSearch( sInput, bRegex, bSmart, bCaseInsensitive );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2124
			var oPrevSearch = oSettings.oPreviousSearch;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2125
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2126
			/* Check if we are forcing or not - optional parameter */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2127
			if ( !iForce )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2128
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2129
				iForce = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2130
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2131
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2132
			/* Need to take account of custom filtering functions - always filter */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2133
			if ( DataTable.ext.afnFiltering.length !== 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2134
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2135
				iForce = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2136
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2137
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2138
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2139
			 * If the input is blank - we want the full data set
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2140
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2141
			if ( sInput.length <= 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2142
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2143
				oSettings.aiDisplay.splice( 0, oSettings.aiDisplay.length);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2144
				oSettings.aiDisplay = oSettings.aiDisplayMaster.slice();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2145
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2146
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2147
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2148
				/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2149
				 * We are starting a new search or the new search string is smaller 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2150
				 * then the old one (i.e. delete). Search from the master array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2151
			 	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2152
				if ( oSettings.aiDisplay.length == oSettings.aiDisplayMaster.length ||
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2153
					   oPrevSearch.sSearch.length > sInput.length || iForce == 1 ||
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2154
					   sInput.indexOf(oPrevSearch.sSearch) !== 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2155
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2156
					/* Nuke the old display array - we are going to rebuild it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2157
					oSettings.aiDisplay.splice( 0, oSettings.aiDisplay.length);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2158
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2159
					/* Force a rebuild of the search array */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2160
					_fnBuildSearchArray( oSettings, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2161
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2162
					/* Search through all records to populate the search array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2163
					 * The the oSettings.aiDisplayMaster and asDataSearch arrays have 1 to 1 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2164
					 * mapping
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2165
					 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2166
					for ( i=0 ; i<oSettings.aiDisplayMaster.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2167
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2168
						if ( rpSearch.test(oSettings.asDataSearch[i]) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2169
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2170
							oSettings.aiDisplay.push( oSettings.aiDisplayMaster[i] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2171
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2172
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2173
			  }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2174
			  else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2175
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2176
			  	/* Using old search array - refine it - do it this way for speed
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2177
			  	 * Don't have to search the whole master array again
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2178
					 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2179
			  	var iIndexCorrector = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2180
			  	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2181
			  	/* Search the current results */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2182
			  	for ( i=0 ; i<oSettings.asDataSearch.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2183
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2184
			  		if ( ! rpSearch.test(oSettings.asDataSearch[i]) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2185
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2186
			  			oSettings.aiDisplay.splice( i-iIndexCorrector, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2187
			  			iIndexCorrector++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2188
			  		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2189
			  	}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2190
			  }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2191
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2192
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2193
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2194
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2195
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2196
		 * Create an array which can be quickly search through
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2197
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2198
		 *  @param {int} iMaster use the master data array - optional
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2199
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2200
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2201
		function _fnBuildSearchArray ( oSettings, iMaster )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2202
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2203
			if ( !oSettings.oFeatures.bServerSide )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2204
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2205
				/* Clear out the old data */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2206
				oSettings.asDataSearch.splice( 0, oSettings.asDataSearch.length );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2207
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2208
				var aArray = (iMaster && iMaster===1) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2209
				 	oSettings.aiDisplayMaster : oSettings.aiDisplay;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2210
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2211
				for ( var i=0, iLen=aArray.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2212
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2213
					oSettings.asDataSearch[i] = _fnBuildSearchRow( oSettings,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2214
						_fnGetRowData( oSettings, aArray[i], 'filter' ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2215
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2216
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2217
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2218
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2219
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2220
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2221
		 * Create a searchable string from a single data row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2222
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2223
		 *  @param {array} aData Row data array to use for the data to search
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2224
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2225
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2226
		function _fnBuildSearchRow( oSettings, aData )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2227
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2228
			var sSearch = '';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2229
			if ( oSettings.__nTmpFilter === undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2230
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2231
				oSettings.__nTmpFilter = document.createElement('div');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2232
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2233
			var nTmp = oSettings.__nTmpFilter;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2234
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2235
			for ( var j=0, jLen=oSettings.aoColumns.length ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2236
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2237
				if ( oSettings.aoColumns[j].bSearchable )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2238
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2239
					var sData = aData[j];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2240
					sSearch += _fnDataToSearch( sData, oSettings.aoColumns[j].sType )+'  ';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2241
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2242
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2243
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2244
			/* If it looks like there is an HTML entity in the string, attempt to decode it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2245
			if ( sSearch.indexOf('&') !== -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2246
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2247
				nTmp.innerHTML = sSearch;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2248
				sSearch = nTmp.textContent ? nTmp.textContent : nTmp.innerText;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2249
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2250
				/* IE and Opera appear to put an newline where there is a <br> tag - remove it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2251
				sSearch = sSearch.replace(/\n/g," ").replace(/\r/g,"");
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2252
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2253
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2254
			return sSearch;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2255
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2256
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2257
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2258
		 * Build a regular expression object suitable for searching a table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2259
		 *  @param {string} sSearch string to search for
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2260
		 *  @param {bool} bRegex treat as a regular expression or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2261
		 *  @param {bool} bSmart perform smart filtering or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2262
		 *  @param {bool} bCaseInsensitive Do case insenstive matching or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2263
		 *  @returns {RegExp} constructed object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2264
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2265
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2266
		function _fnFilterCreateSearch( sSearch, bRegex, bSmart, bCaseInsensitive )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2267
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2268
			var asSearch, sRegExpString;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2269
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2270
			if ( bSmart )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2271
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2272
				/* Generate the regular expression to use. Something along the lines of:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2273
				 * ^(?=.*?\bone\b)(?=.*?\btwo\b)(?=.*?\bthree\b).*$
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2274
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2275
				asSearch = bRegex ? sSearch.split( ' ' ) : _fnEscapeRegex( sSearch ).split( ' ' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2276
				sRegExpString = '^(?=.*?'+asSearch.join( ')(?=.*?' )+').*$';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2277
				return new RegExp( sRegExpString, bCaseInsensitive ? "i" : "" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2278
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2279
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2280
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2281
				sSearch = bRegex ? sSearch : _fnEscapeRegex( sSearch );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2282
				return new RegExp( sSearch, bCaseInsensitive ? "i" : "" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2283
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2284
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2285
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2286
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2287
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2288
		 * Convert raw data into something that the user can search on
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2289
		 *  @param {string} sData data to be modified
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2290
		 *  @param {string} sType data type
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2291
		 *  @returns {string} search string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2292
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2293
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2294
		function _fnDataToSearch ( sData, sType )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2295
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2296
			if ( typeof DataTable.ext.ofnSearch[sType] === "function" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2297
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2298
				return DataTable.ext.ofnSearch[sType]( sData );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2299
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2300
			else if ( sType == "html" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2301
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2302
				return sData.replace(/[\r\n]/g," ").replace( /<.*?>/g, "" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2303
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2304
			else if ( typeof sData === "string" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2305
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2306
				return sData.replace(/[\r\n]/g," ");
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2307
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2308
			else if ( sData === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2309
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2310
				return '';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2311
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2312
			return sData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2313
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2314
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2315
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2316
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2317
		 * scape a string stuch that it can be used in a regular expression
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2318
		 *  @param {string} sVal string to escape
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2319
		 *  @returns {string} escaped string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2320
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2321
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2322
		function _fnEscapeRegex ( sVal )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2323
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2324
			var acEscape = [ '/', '.', '*', '+', '?', '|', '(', ')', '[', ']', '{', '}', '\\', '$', '^' ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2325
			var reReplace = new RegExp( '(\\' + acEscape.join('|\\') + ')', 'g' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2326
			return sVal.replace(reReplace, '\\$1');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2327
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2328
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2329
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2330
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2331
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2332
		 * Generate the node required for the info display
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2333
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2334
		 *  @returns {node} Information element
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2335
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2336
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2337
		function _fnFeatureHtmlInfo ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2338
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2339
			var nInfo = document.createElement( 'div' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2340
			nInfo.className = oSettings.oClasses.sInfo;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2341
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2342
			/* Actions that are to be taken once only for this feature */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2343
			if ( !oSettings.aanFeatures.i )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2344
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2345
				/* Add draw callback */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2346
				oSettings.aoDrawCallback.push( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2347
					"fn": _fnUpdateInfo,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2348
					"sName": "information"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2349
				} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2350
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2351
				/* Add id */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2352
				nInfo.id = oSettings.sTableId+'_info';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2353
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2354
			oSettings.nTable.setAttribute( 'aria-describedby', oSettings.sTableId+'_info' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2355
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2356
			return nInfo;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2357
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2358
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2359
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2360
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2361
		 * Update the information elements in the display
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2362
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2363
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2364
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2365
		function _fnUpdateInfo ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2366
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2367
			/* Show information about the table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2368
			if ( !oSettings.oFeatures.bInfo || oSettings.aanFeatures.i.length === 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2369
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2370
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2371
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2372
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2373
			var
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2374
				iStart = oSettings._iDisplayStart+1, iEnd = oSettings.fnDisplayEnd(),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2375
				iMax = oSettings.fnRecordsTotal(), iTotal = oSettings.fnRecordsDisplay(),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2376
				sStart = oSettings.fnFormatNumber( iStart ), sEnd = oSettings.fnFormatNumber( iEnd ),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2377
				sMax = oSettings.fnFormatNumber( iMax ), sTotal = oSettings.fnFormatNumber( iTotal ),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2378
				sOut;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2379
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2380
			/* When infinite scrolling, we are always starting at 1. _iDisplayStart is used only
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2381
			 * internally
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2382
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2383
			if ( oSettings.oScroll.bInfinite )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2384
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2385
				sStart = oSettings.fnFormatNumber( 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2386
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2387
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2388
			if ( oSettings.fnRecordsDisplay() === 0 && 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2389
				   oSettings.fnRecordsDisplay() == oSettings.fnRecordsTotal() )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2390
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2391
				/* Empty record set */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2392
				sOut = oSettings.oLanguage.sInfoEmpty+ oSettings.oLanguage.sInfoPostFix;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2393
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2394
			else if ( oSettings.fnRecordsDisplay() === 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2395
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2396
				/* Rmpty record set after filtering */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2397
				sOut = oSettings.oLanguage.sInfoEmpty +' '+ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2398
					oSettings.oLanguage.sInfoFiltered.replace('_MAX_', sMax)+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2399
						oSettings.oLanguage.sInfoPostFix;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2400
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2401
			else if ( oSettings.fnRecordsDisplay() == oSettings.fnRecordsTotal() )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2402
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2403
				/* Normal record set */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2404
				sOut = oSettings.oLanguage.sInfo.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2405
						replace('_START_', sStart).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2406
						replace('_END_',   sEnd).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2407
						replace('_TOTAL_', sTotal)+ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2408
					oSettings.oLanguage.sInfoPostFix;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2409
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2410
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2411
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2412
				/* Record set after filtering */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2413
				sOut = oSettings.oLanguage.sInfo.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2414
						replace('_START_', sStart).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2415
						replace('_END_',   sEnd).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2416
						replace('_TOTAL_', sTotal) +' '+ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2417
					oSettings.oLanguage.sInfoFiltered.replace('_MAX_', 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2418
						oSettings.fnFormatNumber(oSettings.fnRecordsTotal()))+ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2419
					oSettings.oLanguage.sInfoPostFix;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2420
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2421
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2422
			if ( oSettings.oLanguage.fnInfoCallback !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2423
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2424
				sOut = oSettings.oLanguage.fnInfoCallback.call( oSettings.oInstance, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2425
					oSettings, iStart, iEnd, iMax, iTotal, sOut );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2426
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2427
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2428
			var n = oSettings.aanFeatures.i;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2429
			for ( var i=0, iLen=n.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2430
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2431
				$(n[i]).html( sOut );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2432
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2433
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2434
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2435
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2436
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2437
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2438
		 * Draw the table for the first time, adding all required features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2439
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2440
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2441
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2442
		function _fnInitialise ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2443
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2444
			var i, iLen, iAjaxStart=oSettings.iInitDisplayStart;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2445
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2446
			/* Ensure that the table data is fully initialised */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2447
			if ( oSettings.bInitialised === false )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2448
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2449
				setTimeout( function(){ _fnInitialise( oSettings ); }, 200 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2450
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2451
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2452
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2453
			/* Show the display HTML options */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2454
			_fnAddOptionsHtml( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2455
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2456
			/* Build and draw the header / footer for the table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2457
			_fnBuildHead( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2458
			_fnDrawHead( oSettings, oSettings.aoHeader );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2459
			if ( oSettings.nTFoot )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2460
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2461
				_fnDrawHead( oSettings, oSettings.aoFooter );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2462
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2463
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2464
			/* Okay to show that something is going on now */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2465
			_fnProcessingDisplay( oSettings, true );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2466
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2467
			/* Calculate sizes for columns */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2468
			if ( oSettings.oFeatures.bAutoWidth )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2469
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2470
				_fnCalculateColumnWidths( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2471
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2472
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2473
			for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2474
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2475
				if ( oSettings.aoColumns[i].sWidth !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2476
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2477
					oSettings.aoColumns[i].nTh.style.width = _fnStringToCss( oSettings.aoColumns[i].sWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2478
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2479
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2480
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2481
			/* If there is default sorting required - let's do it. The sort function will do the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2482
			 * drawing for us. Otherwise we draw the table regardless of the Ajax source - this allows
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2483
			 * the table to look initialised for Ajax sourcing data (show 'loading' message possibly)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2484
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2485
			if ( oSettings.oFeatures.bSort )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2486
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2487
				_fnSort( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2488
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2489
			else if ( oSettings.oFeatures.bFilter )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2490
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2491
				_fnFilterComplete( oSettings, oSettings.oPreviousSearch );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2492
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2493
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2494
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2495
				oSettings.aiDisplay = oSettings.aiDisplayMaster.slice();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2496
				_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2497
				_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2498
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2499
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2500
			/* if there is an ajax source load the data */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2501
			if ( oSettings.sAjaxSource !== null && !oSettings.oFeatures.bServerSide )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2502
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2503
				var aoData = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2504
				_fnServerParams( oSettings, aoData );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2505
				oSettings.fnServerData.call( oSettings.oInstance, oSettings.sAjaxSource, aoData, function(json) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2506
					var aData = (oSettings.sAjaxDataProp !== "") ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2507
					 	_fnGetObjectDataFn( oSettings.sAjaxDataProp )(json) : json;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2508
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2509
					/* Got the data - add it to the table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2510
					for ( i=0 ; i<aData.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2511
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2512
						_fnAddData( oSettings, aData[i] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2513
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2514
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2515
					/* Reset the init display for cookie saving. We've already done a filter, and
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2516
					 * therefore cleared it before. So we need to make it appear 'fresh'
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2517
					 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2518
					oSettings.iInitDisplayStart = iAjaxStart;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2519
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2520
					if ( oSettings.oFeatures.bSort )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2521
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2522
						_fnSort( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2523
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2524
					else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2525
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2526
						oSettings.aiDisplay = oSettings.aiDisplayMaster.slice();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2527
						_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2528
						_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2529
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2530
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2531
					_fnProcessingDisplay( oSettings, false );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2532
					_fnInitComplete( oSettings, json );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2533
				}, oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2534
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2535
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2536
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2537
			/* Server-side processing initialisation complete is done at the end of _fnDraw */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2538
			if ( !oSettings.oFeatures.bServerSide )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2539
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2540
				_fnProcessingDisplay( oSettings, false );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2541
				_fnInitComplete( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2542
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2543
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2544
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2545
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2546
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2547
		 * Draw the table for the first time, adding all required features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2548
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2549
		 *  @param {object} [json] JSON from the server that completed the table, if using Ajax source
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2550
		 *    with client-side processing (optional)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2551
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2552
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2553
		function _fnInitComplete ( oSettings, json )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2554
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2555
			oSettings._bInitComplete = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2556
			_fnCallbackFire( oSettings, 'aoInitComplete', 'init', [oSettings, json] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2557
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2558
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2559
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2560
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2561
		 * Language compatibility - when certain options are given, and others aren't, we
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2562
		 * need to duplicate the values over, in order to provide backwards compatibility
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2563
		 * with older language files.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2564
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2565
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2566
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2567
		function _fnLanguageCompat( oLanguage )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2568
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2569
			/* Backwards compatibility - if there is no sEmptyTable given, then use the same as
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2570
			 * sZeroRecords - assuming that is given.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2571
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2572
			if ( !oLanguage.sEmptyTable && oLanguage.sZeroRecords )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2573
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2574
				_fnMap( oLanguage, oLanguage, 'sZeroRecords', 'sEmptyTable' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2575
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2576
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2577
			/* Likewise with loading records */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2578
			if ( !oLanguage.sLoadingRecords && oLanguage.sZeroRecords )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2579
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2580
				_fnMap( oLanguage, oLanguage, 'sZeroRecords', 'sLoadingRecords' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2581
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2582
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2583
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2584
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2585
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2586
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2587
		 * Generate the node required for user display length changing
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2588
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2589
		 *  @returns {node} Display length feature node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2590
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2591
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2592
		function _fnFeatureHtmlLength ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2593
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2594
			if ( oSettings.oScroll.bInfinite )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2595
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2596
				return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2597
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2598
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2599
			/* This can be overruled by not using the _MENU_ var/macro in the language variable */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2600
			var sName = 'name="'+oSettings.sTableId+'_length"';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2601
			var sStdMenu = '<select size="1" '+sName+'>';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2602
			var i, iLen;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2603
			var aLengthMenu = oSettings.aLengthMenu;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2604
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2605
			if ( aLengthMenu.length == 2 && typeof aLengthMenu[0] === 'object' && 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2606
					typeof aLengthMenu[1] === 'object' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2607
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2608
				for ( i=0, iLen=aLengthMenu[0].length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2609
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2610
					sStdMenu += '<option value="'+aLengthMenu[0][i]+'">'+aLengthMenu[1][i]+'</option>';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2611
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2612
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2613
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2614
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2615
				for ( i=0, iLen=aLengthMenu.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2616
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2617
					sStdMenu += '<option value="'+aLengthMenu[i]+'">'+aLengthMenu[i]+'</option>';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2618
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2619
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2620
			sStdMenu += '</select>';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2621
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2622
			var nLength = document.createElement( 'div' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2623
			if ( !oSettings.aanFeatures.l )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2624
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2625
				nLength.id = oSettings.sTableId+'_length';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2626
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2627
			nLength.className = oSettings.oClasses.sLength;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2628
			nLength.innerHTML = '<label>'+oSettings.oLanguage.sLengthMenu.replace( '_MENU_', sStdMenu )+'</label>';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2629
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2630
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2631
			 * Set the length to the current display length - thanks to Andrea Pavlovic for this fix,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2632
			 * and Stefan Skopnik for fixing the fix!
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2633
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2634
			$('select option[value="'+oSettings._iDisplayLength+'"]', nLength).attr("selected", true);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2635
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2636
			$('select', nLength).bind( 'change.DT', function(e) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2637
				var iVal = $(this).val();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2638
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2639
				/* Update all other length options for the new display */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2640
				var n = oSettings.aanFeatures.l;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2641
				for ( i=0, iLen=n.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2642
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2643
					if ( n[i] != this.parentNode )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2644
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2645
						$('select', n[i]).val( iVal );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2646
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2647
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2648
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2649
				/* Redraw the table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2650
				oSettings._iDisplayLength = parseInt(iVal, 10);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2651
				_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2652
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2653
				/* If we have space to show extra rows (backing up from the end point - then do so */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2654
				if ( oSettings.fnDisplayEnd() == oSettings.fnRecordsDisplay() )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2655
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2656
					oSettings._iDisplayStart = oSettings.fnDisplayEnd() - oSettings._iDisplayLength;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2657
					if ( oSettings._iDisplayStart < 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2658
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2659
						oSettings._iDisplayStart = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2660
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2661
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2662
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2663
				if ( oSettings._iDisplayLength == -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2664
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2665
					oSettings._iDisplayStart = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2666
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2667
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2668
				_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2669
			} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2670
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2671
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2672
			$('select', nLength).attr('aria-controls', oSettings.sTableId);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2673
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2674
			return nLength;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2675
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2676
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2677
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2678
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2679
		 * Rcalculate the end point based on the start point
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2680
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2681
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2682
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2683
		function _fnCalculateEnd( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2684
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2685
			if ( oSettings.oFeatures.bPaginate === false )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2686
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2687
				oSettings._iDisplayEnd = oSettings.aiDisplay.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2688
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2689
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2690
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2691
				/* Set the end point of the display - based on how many elements there are
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2692
				 * still to display
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2693
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2694
				if ( oSettings._iDisplayStart + oSettings._iDisplayLength > oSettings.aiDisplay.length ||
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2695
					   oSettings._iDisplayLength == -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2696
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2697
					oSettings._iDisplayEnd = oSettings.aiDisplay.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2698
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2699
				else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2700
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2701
					oSettings._iDisplayEnd = oSettings._iDisplayStart + oSettings._iDisplayLength;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2702
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2703
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2704
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2705
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2706
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2707
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2708
		/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2709
		 * Note that most of the paging logic is done in 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2710
		 * DataTable.ext.oPagination
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2711
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2712
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2713
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2714
		 * Generate the node required for default pagination
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2715
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2716
		 *  @returns {node} Pagination feature node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2717
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2718
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2719
		function _fnFeatureHtmlPaginate ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2720
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2721
			if ( oSettings.oScroll.bInfinite )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2722
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2723
				return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2724
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2725
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2726
			var nPaginate = document.createElement( 'div' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2727
			nPaginate.className = oSettings.oClasses.sPaging+oSettings.sPaginationType;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2728
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2729
			DataTable.ext.oPagination[ oSettings.sPaginationType ].fnInit( oSettings, nPaginate, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2730
				function( oSettings ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2731
					_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2732
					_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2733
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2734
			);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2735
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2736
			/* Add a draw callback for the pagination on first instance, to update the paging display */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2737
			if ( !oSettings.aanFeatures.p )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2738
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2739
				oSettings.aoDrawCallback.push( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2740
					"fn": function( oSettings ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2741
						DataTable.ext.oPagination[ oSettings.sPaginationType ].fnUpdate( oSettings, function( oSettings ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2742
							_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2743
							_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2744
						} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2745
					},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2746
					"sName": "pagination"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2747
				} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2748
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2749
			return nPaginate;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2750
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2751
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2752
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2753
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2754
		 * Alter the display settings to change the page
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2755
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2756
		 *  @param {string|int} mAction Paging action to take: "first", "previous", "next" or "last"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2757
		 *    or page number to jump to (integer)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2758
		 *  @returns {bool} true page has changed, false - no change (no effect) eg 'first' on page 1
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2759
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2760
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2761
		function _fnPageChange ( oSettings, mAction )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2762
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2763
			var iOldStart = oSettings._iDisplayStart;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2764
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2765
			if ( typeof mAction === "number" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2766
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2767
				oSettings._iDisplayStart = mAction * oSettings._iDisplayLength;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2768
				if ( oSettings._iDisplayStart > oSettings.fnRecordsDisplay() )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2769
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2770
					oSettings._iDisplayStart = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2771
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2772
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2773
			else if ( mAction == "first" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2774
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2775
				oSettings._iDisplayStart = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2776
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2777
			else if ( mAction == "previous" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2778
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2779
				oSettings._iDisplayStart = oSettings._iDisplayLength>=0 ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2780
					oSettings._iDisplayStart - oSettings._iDisplayLength :
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2781
					0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2782
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2783
				/* Correct for underrun */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2784
				if ( oSettings._iDisplayStart < 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2785
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2786
				  oSettings._iDisplayStart = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2787
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2788
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2789
			else if ( mAction == "next" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2790
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2791
				if ( oSettings._iDisplayLength >= 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2792
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2793
					/* Make sure we are not over running the display array */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2794
					if ( oSettings._iDisplayStart + oSettings._iDisplayLength < oSettings.fnRecordsDisplay() )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2795
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2796
						oSettings._iDisplayStart += oSettings._iDisplayLength;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2797
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2798
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2799
				else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2800
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2801
					oSettings._iDisplayStart = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2802
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2803
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2804
			else if ( mAction == "last" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2805
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2806
				if ( oSettings._iDisplayLength >= 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2807
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2808
					var iPages = parseInt( (oSettings.fnRecordsDisplay()-1) / oSettings._iDisplayLength, 10 ) + 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2809
					oSettings._iDisplayStart = (iPages-1) * oSettings._iDisplayLength;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2810
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2811
				else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2812
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2813
					oSettings._iDisplayStart = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2814
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2815
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2816
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2817
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2818
				_fnLog( oSettings, 0, "Unknown paging action: "+mAction );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2819
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2820
			$(oSettings.oInstance).trigger('page', oSettings);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2821
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2822
			return iOldStart != oSettings._iDisplayStart;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2823
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2824
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2825
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2826
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2827
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2828
		 * Generate the node required for the processing node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2829
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2830
		 *  @returns {node} Processing element
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2831
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2832
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2833
		function _fnFeatureHtmlProcessing ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2834
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2835
			var nProcessing = document.createElement( 'div' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2836
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2837
			if ( !oSettings.aanFeatures.r )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2838
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2839
				nProcessing.id = oSettings.sTableId+'_processing';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2840
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2841
			nProcessing.innerHTML = oSettings.oLanguage.sProcessing;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2842
			nProcessing.className = oSettings.oClasses.sProcessing;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2843
			oSettings.nTable.parentNode.insertBefore( nProcessing, oSettings.nTable );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2844
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2845
			return nProcessing;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2846
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2847
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2848
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2849
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2850
		 * Display or hide the processing indicator
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2851
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2852
		 *  @param {bool} bShow Show the processing indicator (true) or not (false)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2853
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2854
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2855
		function _fnProcessingDisplay ( oSettings, bShow )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2856
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2857
			if ( oSettings.oFeatures.bProcessing )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2858
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2859
				var an = oSettings.aanFeatures.r;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2860
				for ( var i=0, iLen=an.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2861
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2862
					an[i].style.visibility = bShow ? "visible" : "hidden";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2863
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2864
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2865
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2866
			$(oSettings.oInstance).trigger('processing', [oSettings, bShow]);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2867
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2868
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2869
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2870
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2871
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2872
		 * Add any control elements for the table - specifically scrolling
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2873
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2874
		 *  @returns {node} Node to add to the DOM
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2875
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2876
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2877
		function _fnFeatureHtmlTable ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2878
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2879
			/* Check if scrolling is enabled or not - if not then leave the DOM unaltered */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2880
			if ( oSettings.oScroll.sX === "" && oSettings.oScroll.sY === "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2881
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2882
				return oSettings.nTable;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2883
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2884
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2885
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2886
			 * The HTML structure that we want to generate in this function is:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2887
			 *  div - nScroller
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2888
			 *    div - nScrollHead
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2889
			 *      div - nScrollHeadInner
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2890
			 *        table - nScrollHeadTable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2891
			 *          thead - nThead
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2892
			 *    div - nScrollBody
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2893
			 *      table - oSettings.nTable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2894
			 *        thead - nTheadSize
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2895
			 *        tbody - nTbody
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2896
			 *    div - nScrollFoot
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2897
			 *      div - nScrollFootInner
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2898
			 *        table - nScrollFootTable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2899
			 *          tfoot - nTfoot
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2900
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2901
			var
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2902
			 	nScroller = document.createElement('div'),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2903
			 	nScrollHead = document.createElement('div'),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2904
			 	nScrollHeadInner = document.createElement('div'),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2905
			 	nScrollBody = document.createElement('div'),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2906
			 	nScrollFoot = document.createElement('div'),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2907
			 	nScrollFootInner = document.createElement('div'),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2908
			 	nScrollHeadTable = oSettings.nTable.cloneNode(false),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2909
			 	nScrollFootTable = oSettings.nTable.cloneNode(false),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2910
				nThead = oSettings.nTable.getElementsByTagName('thead')[0],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2911
			 	nTfoot = oSettings.nTable.getElementsByTagName('tfoot').length === 0 ? null : 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2912
					oSettings.nTable.getElementsByTagName('tfoot')[0],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2913
				oClasses = oSettings.oClasses;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2914
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2915
			nScrollHead.appendChild( nScrollHeadInner );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2916
			nScrollFoot.appendChild( nScrollFootInner );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2917
			nScrollBody.appendChild( oSettings.nTable );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2918
			nScroller.appendChild( nScrollHead );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2919
			nScroller.appendChild( nScrollBody );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2920
			nScrollHeadInner.appendChild( nScrollHeadTable );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2921
			nScrollHeadTable.appendChild( nThead );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2922
			if ( nTfoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2923
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2924
				nScroller.appendChild( nScrollFoot );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2925
				nScrollFootInner.appendChild( nScrollFootTable );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2926
				nScrollFootTable.appendChild( nTfoot );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2927
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2928
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2929
			nScroller.className = oClasses.sScrollWrapper;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2930
			nScrollHead.className = oClasses.sScrollHead;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2931
			nScrollHeadInner.className = oClasses.sScrollHeadInner;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2932
			nScrollBody.className = oClasses.sScrollBody;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2933
			nScrollFoot.className = oClasses.sScrollFoot;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2934
			nScrollFootInner.className = oClasses.sScrollFootInner;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2935
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2936
			if ( oSettings.oScroll.bAutoCss )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2937
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2938
				nScrollHead.style.overflow = "hidden";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2939
				nScrollHead.style.position = "relative";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2940
				nScrollFoot.style.overflow = "hidden";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2941
				nScrollBody.style.overflow = "auto";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2942
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2943
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2944
			nScrollHead.style.border = "0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2945
			nScrollHead.style.width = "100%";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2946
			nScrollFoot.style.border = "0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2947
			nScrollHeadInner.style.width = "150%"; /* will be overwritten */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2948
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2949
			/* Modify attributes to respect the clones */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2950
			nScrollHeadTable.removeAttribute('id');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2951
			nScrollHeadTable.style.marginLeft = "0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2952
			oSettings.nTable.style.marginLeft = "0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2953
			if ( nTfoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2954
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2955
				nScrollFootTable.removeAttribute('id');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2956
				nScrollFootTable.style.marginLeft = "0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2957
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2958
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2959
			/* Move any caption elements from the body to the header */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2960
			var nCaptions = $(oSettings.nTable).children('caption');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2961
			for ( var i=0, iLen=nCaptions.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2962
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2963
				nScrollHeadTable.appendChild( nCaptions[i] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2964
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2965
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2966
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2967
			 * Sizing
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2968
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2969
			/* When xscrolling add the width and a scroller to move the header with the body */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2970
			if ( oSettings.oScroll.sX !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2971
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2972
				nScrollHead.style.width = _fnStringToCss( oSettings.oScroll.sX );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2973
				nScrollBody.style.width = _fnStringToCss( oSettings.oScroll.sX );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2974
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2975
				if ( nTfoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2976
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2977
					nScrollFoot.style.width = _fnStringToCss( oSettings.oScroll.sX );	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2978
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2979
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2980
				/* When the body is scrolled, then we also want to scroll the headers */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2981
				$(nScrollBody).scroll( function (e) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2982
					nScrollHead.scrollLeft = this.scrollLeft;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2983
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2984
					if ( nTfoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2985
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2986
						nScrollFoot.scrollLeft = this.scrollLeft;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2987
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2988
				} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2989
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2990
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2991
			/* When yscrolling, add the height */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2992
			if ( oSettings.oScroll.sY !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2993
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2994
				nScrollBody.style.height = _fnStringToCss( oSettings.oScroll.sY );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2995
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2996
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2997
			/* Redraw - align columns across the tables */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2998
			oSettings.aoDrawCallback.push( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  2999
				"fn": _fnScrollDraw,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3000
				"sName": "scrolling"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3001
			} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3002
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3003
			/* Infinite scrolling event handlers */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3004
			if ( oSettings.oScroll.bInfinite )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3005
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3006
				$(nScrollBody).scroll( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3007
					/* Use a blocker to stop scrolling from loading more data while other data is still loading */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3008
					if ( !oSettings.bDrawing && $(this).scrollTop() !== 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3009
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3010
						/* Check if we should load the next data set */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3011
						if ( $(this).scrollTop() + $(this).height() > 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3012
							$(oSettings.nTable).height() - oSettings.oScroll.iLoadGap )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3013
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3014
							/* Only do the redraw if we have to - we might be at the end of the data */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3015
							if ( oSettings.fnDisplayEnd() < oSettings.fnRecordsDisplay() )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3016
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3017
								_fnPageChange( oSettings, 'next' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3018
								_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3019
								_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3020
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3021
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3022
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3023
				} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3024
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3025
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3026
			oSettings.nScrollHead = nScrollHead;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3027
			oSettings.nScrollFoot = nScrollFoot;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3028
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3029
			return nScroller;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3030
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3031
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3032
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3033
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3034
		 * Update the various tables for resizing. It's a bit of a pig this function, but
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3035
		 * basically the idea to:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3036
		 *   1. Re-create the table inside the scrolling div
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3037
		 *   2. Take live measurements from the DOM
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3038
		 *   3. Apply the measurements
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3039
		 *   4. Clean up
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3040
		 *  @param {object} o dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3041
		 *  @returns {node} Node to add to the DOM
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3042
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3043
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3044
		function _fnScrollDraw ( o )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3045
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3046
			var
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3047
				nScrollHeadInner = o.nScrollHead.getElementsByTagName('div')[0],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3048
				nScrollHeadTable = nScrollHeadInner.getElementsByTagName('table')[0],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3049
				nScrollBody = o.nTable.parentNode,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3050
				i, iLen, j, jLen, anHeadToSize, anHeadSizers, anFootSizers, anFootToSize, oStyle, iVis,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3051
				iWidth, aApplied=[], iSanityWidth,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3052
				nScrollFootInner = (o.nTFoot !== null) ? o.nScrollFoot.getElementsByTagName('div')[0] : null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3053
				nScrollFootTable = (o.nTFoot !== null) ? nScrollFootInner.getElementsByTagName('table')[0] : null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3054
				ie67 = $.browser.msie && $.browser.version <= 7;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3055
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3056
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3057
			 * 1. Re-create the table inside the scrolling div
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3058
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3059
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3060
			/* Remove the old minimised thead and tfoot elements in the inner table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3061
			var nTheadSize = o.nTable.getElementsByTagName('thead');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3062
			if ( nTheadSize.length > 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3063
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3064
				o.nTable.removeChild( nTheadSize[0] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3065
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3066
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3067
			var nTfootSize;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3068
			if ( o.nTFoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3069
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3070
				/* Remove the old minimised footer element in the cloned header */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3071
				nTfootSize = o.nTable.getElementsByTagName('tfoot');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3072
				if ( nTfootSize.length > 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3073
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3074
					o.nTable.removeChild( nTfootSize[0] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3075
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3076
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3077
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3078
			/* Clone the current header and footer elements and then place it into the inner table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3079
			nTheadSize = o.nTHead.cloneNode(true);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3080
			o.nTable.insertBefore( nTheadSize, o.nTable.childNodes[0] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3081
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3082
			if ( o.nTFoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3083
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3084
				nTfootSize = o.nTFoot.cloneNode(true);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3085
				o.nTable.insertBefore( nTfootSize, o.nTable.childNodes[1] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3086
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3087
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3088
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3089
			 * 2. Take live measurements from the DOM - do not alter the DOM itself!
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3090
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3091
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3092
			/* Remove old sizing and apply the calculated column widths
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3093
			 * Get the unique column headers in the newly created (cloned) header. We want to apply the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3094
			 * calclated sizes to this header
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3095
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3096
			if ( o.oScroll.sX === "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3097
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3098
				nScrollBody.style.width = '100%';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3099
				nScrollHeadInner.parentNode.style.width = '100%';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3100
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3101
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3102
			var nThs = _fnGetUniqueThs( o, nTheadSize );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3103
			for ( i=0, iLen=nThs.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3104
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3105
				iVis = _fnVisibleToColumnIndex( o, i );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3106
				nThs[i].style.width = o.aoColumns[iVis].sWidth;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3107
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3108
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3109
			if ( o.nTFoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3110
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3111
				_fnApplyToChildren( function(n) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3112
					n.style.width = "";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3113
				}, nTfootSize.getElementsByTagName('tr') );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3114
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3115
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3116
			/* Size the table as a whole */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3117
			iSanityWidth = $(o.nTable).outerWidth();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3118
			if ( o.oScroll.sX === "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3119
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3120
				/* No x scrolling */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3121
				o.nTable.style.width = "100%";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3122
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3123
				/* I know this is rubbish - but IE7 will make the width of the table when 100% include
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3124
				 * the scrollbar - which is shouldn't. When there is a scrollbar we need to take this
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3125
				 * into account.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3126
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3127
				if ( ie67 && ($('tbody', nScrollBody).height() > nScrollBody.offsetHeight || 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3128
					$(nScrollBody).css('overflow-y') == "scroll")  )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3129
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3130
					o.nTable.style.width = _fnStringToCss( $(o.nTable).outerWidth()-o.oScroll.iBarWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3131
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3132
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3133
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3134
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3135
				if ( o.oScroll.sXInner !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3136
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3137
					/* x scroll inner has been given - use it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3138
					o.nTable.style.width = _fnStringToCss(o.oScroll.sXInner);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3139
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3140
				else if ( iSanityWidth == $(nScrollBody).width() &&
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3141
				   $(nScrollBody).height() < $(o.nTable).height() )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3142
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3143
					/* There is y-scrolling - try to take account of the y scroll bar */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3144
					o.nTable.style.width = _fnStringToCss( iSanityWidth-o.oScroll.iBarWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3145
					if ( $(o.nTable).outerWidth() > iSanityWidth-o.oScroll.iBarWidth )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3146
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3147
						/* Not possible to take account of it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3148
						o.nTable.style.width = _fnStringToCss( iSanityWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3149
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3150
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3151
				else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3152
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3153
					/* All else fails */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3154
					o.nTable.style.width = _fnStringToCss( iSanityWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3155
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3156
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3157
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3158
			/* Recalculate the sanity width - now that we've applied the required width, before it was
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3159
			 * a temporary variable. This is required because the column width calculation is done
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3160
			 * before this table DOM is created.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3161
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3162
			iSanityWidth = $(o.nTable).outerWidth();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3163
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3164
			/* We want the hidden header to have zero height, so remove padding and borders. Then
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3165
			 * set the width based on the real headers
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3166
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3167
			anHeadToSize = o.nTHead.getElementsByTagName('tr');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3168
			anHeadSizers = nTheadSize.getElementsByTagName('tr');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3169
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3170
			_fnApplyToChildren( function(nSizer, nToSize) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3171
				oStyle = nSizer.style;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3172
				oStyle.paddingTop = "0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3173
				oStyle.paddingBottom = "0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3174
				oStyle.borderTopWidth = "0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3175
				oStyle.borderBottomWidth = "0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3176
				oStyle.height = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3177
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3178
				iWidth = $(nSizer).width();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3179
				nToSize.style.width = _fnStringToCss( iWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3180
				aApplied.push( iWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3181
			}, anHeadSizers, anHeadToSize );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3182
			$(anHeadSizers).height(0);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3183
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3184
			if ( o.nTFoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3185
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3186
				/* Clone the current footer and then place it into the body table as a "hidden header" */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3187
				anFootSizers = nTfootSize.getElementsByTagName('tr');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3188
				anFootToSize = o.nTFoot.getElementsByTagName('tr');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3189
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3190
				_fnApplyToChildren( function(nSizer, nToSize) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3191
					oStyle = nSizer.style;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3192
					oStyle.paddingTop = "0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3193
					oStyle.paddingBottom = "0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3194
					oStyle.borderTopWidth = "0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3195
					oStyle.borderBottomWidth = "0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3196
					oStyle.height = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3197
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3198
					iWidth = $(nSizer).width();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3199
					nToSize.style.width = _fnStringToCss( iWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3200
					aApplied.push( iWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3201
				}, anFootSizers, anFootToSize );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3202
				$(anFootSizers).height(0);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3203
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3204
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3205
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3206
			 * 3. Apply the measurements
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3207
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3208
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3209
			/* "Hide" the header and footer that we used for the sizing. We want to also fix their width
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3210
			 * to what they currently are
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3211
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3212
			_fnApplyToChildren( function(nSizer) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3213
				nSizer.innerHTML = "";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3214
				nSizer.style.width = _fnStringToCss( aApplied.shift() );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3215
			}, anHeadSizers );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3216
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3217
			if ( o.nTFoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3218
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3219
				_fnApplyToChildren( function(nSizer) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3220
					nSizer.innerHTML = "";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3221
					nSizer.style.width = _fnStringToCss( aApplied.shift() );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3222
				}, anFootSizers );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3223
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3224
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3225
			/* Sanity check that the table is of a sensible width. If not then we are going to get
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3226
			 * misalignment - try to prevent this by not allowing the table to shrink below its min width
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3227
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3228
			if ( $(o.nTable).outerWidth() < iSanityWidth )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3229
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3230
				/* The min width depends upon if we have a vertical scrollbar visible or not */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3231
				var iCorrection = ((nScrollBody.scrollHeight > nScrollBody.offsetHeight || 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3232
					$(nScrollBody).css('overflow-y') == "scroll")) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3233
						iSanityWidth+o.oScroll.iBarWidth : iSanityWidth;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3234
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3235
				/* IE6/7 are a law unto themselves... */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3236
				if ( ie67 && (nScrollBody.scrollHeight > 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3237
					nScrollBody.offsetHeight || $(nScrollBody).css('overflow-y') == "scroll")  )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3238
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3239
					o.nTable.style.width = _fnStringToCss( iCorrection-o.oScroll.iBarWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3240
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3241
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3242
				/* Apply the calculated minimum width to the table wrappers */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3243
				nScrollBody.style.width = _fnStringToCss( iCorrection );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3244
				nScrollHeadInner.parentNode.style.width = _fnStringToCss( iCorrection );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3245
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3246
				if ( o.nTFoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3247
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3248
					nScrollFootInner.parentNode.style.width = _fnStringToCss( iCorrection );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3249
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3250
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3251
				/* And give the user a warning that we've stopped the table getting too small */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3252
				if ( o.oScroll.sX === "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3253
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3254
					_fnLog( o, 1, "The table cannot fit into the current element which will cause column"+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3255
						" misalignment. The table has been drawn at its minimum possible width." );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3256
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3257
				else if ( o.oScroll.sXInner !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3258
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3259
					_fnLog( o, 1, "The table cannot fit into the current element which will cause column"+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3260
						" misalignment. Increase the sScrollXInner value or remove it to allow automatic"+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3261
						" calculation" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3262
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3263
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3264
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3265
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3266
				nScrollBody.style.width = _fnStringToCss( '100%' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3267
				nScrollHeadInner.parentNode.style.width = _fnStringToCss( '100%' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3268
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3269
				if ( o.nTFoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3270
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3271
					nScrollFootInner.parentNode.style.width = _fnStringToCss( '100%' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3272
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3273
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3274
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3275
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3276
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3277
			 * 4. Clean up
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3278
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3279
			if ( o.oScroll.sY === "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3280
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3281
				/* IE7< puts a vertical scrollbar in place (when it shouldn't be) due to subtracting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3282
				 * the scrollbar height from the visible display, rather than adding it on. We need to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3283
				 * set the height in order to sort this. Don't want to do it in any other browsers.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3284
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3285
				if ( ie67 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3286
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3287
					nScrollBody.style.height = _fnStringToCss( o.nTable.offsetHeight+o.oScroll.iBarWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3288
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3289
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3290
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3291
			if ( o.oScroll.sY !== "" && o.oScroll.bCollapse )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3292
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3293
				nScrollBody.style.height = _fnStringToCss( o.oScroll.sY );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3294
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3295
				var iExtra = (o.oScroll.sX !== "" && o.nTable.offsetWidth > nScrollBody.offsetWidth) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3296
				 	o.oScroll.iBarWidth : 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3297
				if ( o.nTable.offsetHeight < nScrollBody.offsetHeight )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3298
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3299
					nScrollBody.style.height = _fnStringToCss( $(o.nTable).height()+iExtra );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3300
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3301
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3302
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3303
			/* Finally set the width's of the header and footer tables */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3304
			var iOuterWidth = $(o.nTable).outerWidth();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3305
			nScrollHeadTable.style.width = _fnStringToCss( iOuterWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3306
			nScrollHeadInner.style.width = _fnStringToCss( iOuterWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3307
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3308
			if ( o.nTFoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3309
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3310
				nScrollFootInner.style.width = _fnStringToCss( o.nTable.offsetWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3311
				nScrollFootTable.style.width = _fnStringToCss( o.nTable.offsetWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3312
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3313
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3314
			/* If sorting or filtering has occurred, jump the scrolling back to the top */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3315
			if ( o.bSorted || o.bFiltered )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3316
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3317
				nScrollBody.scrollTop = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3318
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3319
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3320
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3321
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3322
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3323
		 * Apply a given function to the display child nodes of an element array (typically
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3324
		 * TD children of TR rows
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3325
		 *  @param {function} fn Method to apply to the objects
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3326
		 *  @param array {nodes} an1 List of elements to look through for display children
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3327
		 *  @param array {nodes} an2 Another list (identical structure to the first) - optional
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3328
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3329
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3330
		function _fnApplyToChildren( fn, an1, an2 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3331
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3332
			for ( var i=0, iLen=an1.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3333
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3334
				for ( var j=0, jLen=an1[i].childNodes.length ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3335
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3336
					if ( an1[i].childNodes[j].nodeType == 1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3337
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3338
						if ( an2 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3339
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3340
							fn( an1[i].childNodes[j], an2[i].childNodes[j] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3341
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3342
						else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3343
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3344
							fn( an1[i].childNodes[j] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3345
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3346
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3347
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3348
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3349
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3350
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3351
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3352
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3353
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3354
		 * Convert a CSS unit width to pixels (e.g. 2em)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3355
		 *  @param {string} sWidth width to be converted
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3356
		 *  @param {node} nParent parent to get the with for (required for relative widths) - optional
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3357
		 *  @returns {int} iWidth width in pixels
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3358
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3359
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3360
		function _fnConvertToWidth ( sWidth, nParent )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3361
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3362
			if ( !sWidth || sWidth === null || sWidth === '' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3363
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3364
				return 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3365
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3366
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3367
			if ( !nParent )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3368
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3369
				nParent = document.getElementsByTagName('body')[0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3370
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3371
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3372
			var iWidth;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3373
			var nTmp = document.createElement( "div" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3374
			nTmp.style.width = _fnStringToCss( sWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3375
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3376
			nParent.appendChild( nTmp );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3377
			iWidth = nTmp.offsetWidth;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3378
			nParent.removeChild( nTmp );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3379
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3380
			return ( iWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3381
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3382
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3383
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3384
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3385
		 * Calculate the width of columns for the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3386
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3387
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3388
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3389
		function _fnCalculateColumnWidths ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3390
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3391
			var iTableWidth = oSettings.nTable.offsetWidth;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3392
			var iUserInputs = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3393
			var iTmpWidth;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3394
			var iVisibleColumns = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3395
			var iColums = oSettings.aoColumns.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3396
			var i, iIndex, iCorrector, iWidth;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3397
			var oHeaders = $('th', oSettings.nTHead);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3398
			var widthAttr = oSettings.nTable.getAttribute('width');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3399
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3400
			/* Convert any user input sizes into pixel sizes */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3401
			for ( i=0 ; i<iColums ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3402
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3403
				if ( oSettings.aoColumns[i].bVisible )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3404
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3405
					iVisibleColumns++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3406
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3407
					if ( oSettings.aoColumns[i].sWidth !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3408
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3409
						iTmpWidth = _fnConvertToWidth( oSettings.aoColumns[i].sWidthOrig, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3410
							oSettings.nTable.parentNode );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3411
						if ( iTmpWidth !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3412
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3413
							oSettings.aoColumns[i].sWidth = _fnStringToCss( iTmpWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3414
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3415
							
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3416
						iUserInputs++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3417
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3418
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3419
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3420
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3421
			/* If the number of columns in the DOM equals the number that we have to process in 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3422
			 * DataTables, then we can use the offsets that are created by the web-browser. No custom 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3423
			 * sizes can be set in order for this to happen, nor scrolling used
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3424
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3425
			if ( iColums == oHeaders.length && iUserInputs === 0 && iVisibleColumns == iColums &&
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3426
				oSettings.oScroll.sX === "" && oSettings.oScroll.sY === "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3427
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3428
				for ( i=0 ; i<oSettings.aoColumns.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3429
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3430
					iTmpWidth = $(oHeaders[i]).width();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3431
					if ( iTmpWidth !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3432
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3433
						oSettings.aoColumns[i].sWidth = _fnStringToCss( iTmpWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3434
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3435
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3436
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3437
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3438
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3439
				/* Otherwise we are going to have to do some calculations to get the width of each column.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3440
				 * Construct a 1 row table with the widest node in the data, and any user defined widths,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3441
				 * then insert it into the DOM and allow the browser to do all the hard work of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3442
				 * calculating table widths.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3443
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3444
				var
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3445
					nCalcTmp = oSettings.nTable.cloneNode( false ),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3446
					nTheadClone = oSettings.nTHead.cloneNode(true),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3447
					nBody = document.createElement( 'tbody' ),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3448
					nTr = document.createElement( 'tr' ),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3449
					nDivSizing;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3450
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3451
				nCalcTmp.removeAttribute( "id" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3452
				nCalcTmp.appendChild( nTheadClone );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3453
				if ( oSettings.nTFoot !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3454
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3455
					nCalcTmp.appendChild( oSettings.nTFoot.cloneNode(true) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3456
					_fnApplyToChildren( function(n) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3457
						n.style.width = "";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3458
					}, nCalcTmp.getElementsByTagName('tr') );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3459
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3460
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3461
				nCalcTmp.appendChild( nBody );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3462
				nBody.appendChild( nTr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3463
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3464
				/* Remove any sizing that was previously applied by the styles */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3465
				var jqColSizing = $('thead th', nCalcTmp);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3466
				if ( jqColSizing.length === 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3467
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3468
					jqColSizing = $('tbody tr:eq(0)>td', nCalcTmp);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3469
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3470
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3471
				/* Apply custom sizing to the cloned header */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3472
				var nThs = _fnGetUniqueThs( oSettings, nTheadClone );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3473
				iCorrector = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3474
				for ( i=0 ; i<iColums ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3475
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3476
					var oColumn = oSettings.aoColumns[i];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3477
					if ( oColumn.bVisible && oColumn.sWidthOrig !== null && oColumn.sWidthOrig !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3478
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3479
						nThs[i-iCorrector].style.width = _fnStringToCss( oColumn.sWidthOrig );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3480
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3481
					else if ( oColumn.bVisible )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3482
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3483
						nThs[i-iCorrector].style.width = "";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3484
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3485
					else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3486
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3487
						iCorrector++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3488
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3489
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3490
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3491
				/* Find the biggest td for each column and put it into the table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3492
				for ( i=0 ; i<iColums ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3493
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3494
					if ( oSettings.aoColumns[i].bVisible )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3495
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3496
						var nTd = _fnGetWidestNode( oSettings, i );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3497
						if ( nTd !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3498
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3499
							nTd = nTd.cloneNode(true);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3500
							if ( oSettings.aoColumns[i].sContentPadding !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3501
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3502
								nTd.innerHTML += oSettings.aoColumns[i].sContentPadding;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3503
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3504
							nTr.appendChild( nTd );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3505
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3506
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3507
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3508
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3509
				/* Build the table and 'display' it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3510
				var nWrapper = oSettings.nTable.parentNode;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3511
				nWrapper.appendChild( nCalcTmp );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3512
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3513
				/* When scrolling (X or Y) we want to set the width of the table as appropriate. However,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3514
				 * when not scrolling leave the table width as it is. This results in slightly different,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3515
				 * but I think correct behaviour
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3516
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3517
				if ( oSettings.oScroll.sX !== "" && oSettings.oScroll.sXInner !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3518
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3519
					nCalcTmp.style.width = _fnStringToCss(oSettings.oScroll.sXInner);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3520
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3521
				else if ( oSettings.oScroll.sX !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3522
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3523
					nCalcTmp.style.width = "";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3524
					if ( $(nCalcTmp).width() < nWrapper.offsetWidth )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3525
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3526
						nCalcTmp.style.width = _fnStringToCss( nWrapper.offsetWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3527
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3528
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3529
				else if ( oSettings.oScroll.sY !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3530
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3531
					nCalcTmp.style.width = _fnStringToCss( nWrapper.offsetWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3532
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3533
				else if ( widthAttr )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3534
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3535
					nCalcTmp.style.width = _fnStringToCss( widthAttr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3536
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3537
				nCalcTmp.style.visibility = "hidden";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3538
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3539
				/* Scrolling considerations */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3540
				_fnScrollingWidthAdjust( oSettings, nCalcTmp );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3541
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3542
				/* Read the width's calculated by the browser and store them for use by the caller. We
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3543
				 * first of all try to use the elements in the body, but it is possible that there are
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3544
				 * no elements there, under which circumstances we use the header elements
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3545
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3546
				var oNodes = $("tbody tr:eq(0)", nCalcTmp).children();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3547
				if ( oNodes.length === 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3548
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3549
					oNodes = _fnGetUniqueThs( oSettings, $('thead', nCalcTmp)[0] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3550
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3551
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3552
				/* Browsers need a bit of a hand when a width is assigned to any columns when 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3553
				 * x-scrolling as they tend to collapse the table to the min-width, even if
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3554
				 * we sent the column widths. So we need to keep track of what the table width
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3555
				 * should be by summing the user given values, and the automatic values
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3556
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3557
				if ( oSettings.oScroll.sX !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3558
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3559
					var iTotal = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3560
					iCorrector = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3561
					for ( i=0 ; i<oSettings.aoColumns.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3562
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3563
						if ( oSettings.aoColumns[i].bVisible )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3564
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3565
							if ( oSettings.aoColumns[i].sWidthOrig === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3566
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3567
								iTotal += $(oNodes[iCorrector]).outerWidth();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3568
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3569
							else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3570
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3571
								iTotal += parseInt(oSettings.aoColumns[i].sWidth.replace('px',''), 10) +
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3572
									($(oNodes[iCorrector]).outerWidth() - $(oNodes[iCorrector]).width());
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3573
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3574
							iCorrector++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3575
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3576
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3577
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3578
					nCalcTmp.style.width = _fnStringToCss( iTotal );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3579
					oSettings.nTable.style.width = _fnStringToCss( iTotal );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3580
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3581
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3582
				iCorrector = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3583
				for ( i=0 ; i<oSettings.aoColumns.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3584
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3585
					if ( oSettings.aoColumns[i].bVisible )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3586
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3587
						iWidth = $(oNodes[iCorrector]).width();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3588
						if ( iWidth !== null && iWidth > 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3589
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3590
							oSettings.aoColumns[i].sWidth = _fnStringToCss( iWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3591
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3592
						iCorrector++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3593
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3594
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3595
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3596
				var cssWidth = $(nCalcTmp).css('width');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3597
				oSettings.nTable.style.width = (cssWidth.indexOf('%') !== -1) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3598
				    cssWidth : _fnStringToCss( $(nCalcTmp).outerWidth() );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3599
				nCalcTmp.parentNode.removeChild( nCalcTmp );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3600
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3601
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3602
			if ( widthAttr )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3603
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3604
				oSettings.nTable.style.width = _fnStringToCss( widthAttr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3605
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3606
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3607
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3608
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3609
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3610
		 * Adjust a table's width to take account of scrolling
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3611
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3612
		 *  @param {node} n table node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3613
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3614
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3615
		function _fnScrollingWidthAdjust ( oSettings, n )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3616
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3617
			if ( oSettings.oScroll.sX === "" && oSettings.oScroll.sY !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3618
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3619
				/* When y-scrolling only, we want to remove the width of the scroll bar so the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3620
				 * + scroll bar will fit into the area avaialble.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3621
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3622
				var iOrigWidth = $(n).width();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3623
				n.style.width = _fnStringToCss( $(n).outerWidth()-oSettings.oScroll.iBarWidth );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3624
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3625
			else if ( oSettings.oScroll.sX !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3626
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3627
				/* When x-scrolling both ways, fix the table at it's current size, without adjusting */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3628
				n.style.width = _fnStringToCss( $(n).outerWidth() );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3629
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3630
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3631
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3632
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3633
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3634
		 * Get the widest node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3635
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3636
		 *  @param {int} iCol column of interest
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3637
		 *  @returns {string} max strlens for each column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3638
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3639
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3640
		function _fnGetWidestNode( oSettings, iCol )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3641
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3642
			var iMaxIndex = _fnGetMaxLenString( oSettings, iCol );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3643
			if ( iMaxIndex < 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3644
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3645
				return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3646
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3647
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3648
			if ( oSettings.aoData[iMaxIndex].nTr === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3649
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3650
				var n = document.createElement('td');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3651
				n.innerHTML = _fnGetCellData( oSettings, iMaxIndex, iCol, '' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3652
				return n;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3653
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3654
			return _fnGetTdNodes(oSettings, iMaxIndex)[iCol];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3655
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3656
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3657
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3658
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3659
		 * Get the maximum strlen for each data column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3660
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3661
		 *  @param {int} iCol column of interest
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3662
		 *  @returns {string} max strlens for each column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3663
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3664
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3665
		function _fnGetMaxLenString( oSettings, iCol )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3666
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3667
			var iMax = -1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3668
			var iMaxIndex = -1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3669
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3670
			for ( var i=0 ; i<oSettings.aoData.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3671
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3672
				var s = _fnGetCellData( oSettings, i, iCol, 'display' )+"";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3673
				s = s.replace( /<.*?>/g, "" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3674
				if ( s.length > iMax )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3675
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3676
					iMax = s.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3677
					iMaxIndex = i;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3678
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3679
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3680
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3681
			return iMaxIndex;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3682
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3683
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3684
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3685
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3686
		 * Append a CSS unit (only if required) to a string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3687
		 *  @param {array} aArray1 first array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3688
		 *  @param {array} aArray2 second array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3689
		 *  @returns {int} 0 if match, 1 if length is different, 2 if no match
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3690
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3691
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3692
		function _fnStringToCss( s )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3693
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3694
			if ( s === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3695
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3696
				return "0px";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3697
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3698
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3699
			if ( typeof s == 'number' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3700
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3701
				if ( s < 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3702
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3703
					return "0px";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3704
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3705
				return s+"px";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3706
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3707
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3708
			/* Check if the last character is not 0-9 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3709
			var c = s.charCodeAt( s.length-1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3710
			if (c < 0x30 || c > 0x39)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3711
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3712
				return s;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3713
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3714
			return s+"px";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3715
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3716
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3717
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3718
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3719
		 * Get the width of a scroll bar in this browser being used
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3720
		 *  @returns {int} width in pixels
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3721
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3722
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3723
		function _fnScrollBarWidth ()
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3724
		{  
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3725
			var inner = document.createElement('p');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3726
			var style = inner.style;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3727
			style.width = "100%";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3728
			style.height = "200px";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3729
			style.padding = "0px";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3730
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3731
			var outer = document.createElement('div');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3732
			style = outer.style;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3733
			style.position = "absolute";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3734
			style.top = "0px";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3735
			style.left = "0px";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3736
			style.visibility = "hidden";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3737
			style.width = "200px";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3738
			style.height = "150px";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3739
			style.padding = "0px";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3740
			style.overflow = "hidden";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3741
			outer.appendChild(inner);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3742
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3743
			document.body.appendChild(outer);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3744
			var w1 = inner.offsetWidth;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3745
			outer.style.overflow = 'scroll';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3746
			var w2 = inner.offsetWidth;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3747
			if ( w1 == w2 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3748
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3749
				w2 = outer.clientWidth;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3750
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3751
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3752
			document.body.removeChild(outer);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3753
			return (w1 - w2);  
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3754
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3755
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3756
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3757
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3758
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3759
		 * Change the order of the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3760
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3761
		 *  @param {bool} bApplyClasses optional - should we apply classes or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3762
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3763
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3764
		function _fnSort ( oSettings, bApplyClasses )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3765
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3766
			var
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3767
				i, iLen, j, jLen, k, kLen,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3768
				sDataType, nTh,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3769
				aaSort = [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3770
			 	aiOrig = [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3771
				oSort = DataTable.ext.oSort,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3772
				aoData = oSettings.aoData,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3773
				aoColumns = oSettings.aoColumns,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3774
				oAria = oSettings.oLanguage.oAria;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3775
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3776
			/* No sorting required if server-side or no sorting array */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3777
			if ( !oSettings.oFeatures.bServerSide && 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3778
				(oSettings.aaSorting.length !== 0 || oSettings.aaSortingFixed !== null) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3779
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3780
				if ( oSettings.aaSortingFixed !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3781
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3782
					aaSort = oSettings.aaSortingFixed.concat( oSettings.aaSorting );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3783
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3784
				else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3785
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3786
					aaSort = oSettings.aaSorting.slice();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3787
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3788
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3789
				/* If there is a sorting data type, and a fuction belonging to it, then we need to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3790
				 * get the data from the developer's function and apply it for this column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3791
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3792
				for ( i=0 ; i<aaSort.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3793
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3794
					var iColumn = aaSort[i][0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3795
					var iVisColumn = _fnColumnIndexToVisible( oSettings, iColumn );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3796
					sDataType = oSettings.aoColumns[ iColumn ].sSortDataType;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3797
					if ( DataTable.ext.afnSortData[sDataType] )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3798
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3799
						var aData = DataTable.ext.afnSortData[sDataType]( oSettings, iColumn, iVisColumn );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3800
						for ( j=0, jLen=aoData.length ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3801
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3802
							_fnSetCellData( oSettings, j, iColumn, aData[j] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3803
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3804
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3805
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3806
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3807
				/* Create a value - key array of the current row positions such that we can use their
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3808
				 * current position during the sort, if values match, in order to perform stable sorting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3809
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3810
				for ( i=0, iLen=oSettings.aiDisplayMaster.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3811
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3812
					aiOrig[ oSettings.aiDisplayMaster[i] ] = i;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3813
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3814
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3815
				/* Build an internal data array which is specific to the sort, so we can get and prep
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3816
				 * the data to be sorted only once, rather than needing to do it every time the sorting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3817
				 * function runs. This make the sorting function a very simple comparison
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3818
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3819
				var iSortLen = aaSort.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3820
				var fnSortFormat, aDataSort;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3821
				for ( i=0, iLen=aoData.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3822
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3823
					for ( j=0 ; j<iSortLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3824
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3825
						aDataSort = aoColumns[ aaSort[j][0] ].aDataSort;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3826
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3827
						for ( k=0, kLen=aDataSort.length ; k<kLen ; k++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3828
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3829
							sDataType = aoColumns[ aDataSort[k] ].sType;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3830
							fnSortFormat = oSort[ (sDataType ? sDataType : 'string')+"-pre" ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3831
							
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3832
							aoData[i]._aSortData[ aDataSort[k] ] = fnSortFormat ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3833
								fnSortFormat( _fnGetCellData( oSettings, i, aDataSort[k], 'sort' ) ) :
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3834
								_fnGetCellData( oSettings, i, aDataSort[k], 'sort' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3835
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3836
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3837
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3838
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3839
				/* Do the sort - here we want multi-column sorting based on a given data source (column)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3840
				 * and sorting function (from oSort) in a certain direction. It's reasonably complex to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3841
				 * follow on it's own, but this is what we want (example two column sorting):
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3842
				 *  fnLocalSorting = function(a,b){
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3843
				 *  	var iTest;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3844
				 *  	iTest = oSort['string-asc']('data11', 'data12');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3845
				 *  	if (iTest !== 0)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3846
				 *  		return iTest;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3847
				 *    iTest = oSort['numeric-desc']('data21', 'data22');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3848
				 *    if (iTest !== 0)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3849
				 *  		return iTest;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3850
				 *  	return oSort['numeric-asc']( aiOrig[a], aiOrig[b] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3851
				 *  }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3852
				 * Basically we have a test for each sorting column, if the data in that column is equal,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3853
				 * test the next column. If all columns match, then we use a numeric sort on the row 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3854
				 * positions in the original data array to provide a stable sort.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3855
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3856
				oSettings.aiDisplayMaster.sort( function ( a, b ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3857
					var k, l, lLen, iTest, aDataSort, sDataType;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3858
					for ( k=0 ; k<iSortLen ; k++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3859
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3860
						aDataSort = aoColumns[ aaSort[k][0] ].aDataSort;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3861
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3862
						for ( l=0, lLen=aDataSort.length ; l<lLen ; l++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3863
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3864
							sDataType = aoColumns[ aDataSort[l] ].sType;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3865
							
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3866
							iTest = oSort[ (sDataType ? sDataType : 'string')+"-"+aaSort[k][1] ](
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3867
								aoData[a]._aSortData[ aDataSort[l] ],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3868
								aoData[b]._aSortData[ aDataSort[l] ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3869
							);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3870
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3871
							if ( iTest !== 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3872
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3873
								return iTest;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3874
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3875
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3876
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3877
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3878
					return oSort['numeric-asc']( aiOrig[a], aiOrig[b] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3879
				} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3880
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3881
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3882
			/* Alter the sorting classes to take account of the changes */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3883
			if ( (bApplyClasses === undefined || bApplyClasses) && !oSettings.oFeatures.bDeferRender )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3884
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3885
				_fnSortingClasses( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3886
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3887
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3888
			for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3889
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3890
				nTh = aoColumns[i].nTh;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3891
				nTh.removeAttribute('aria-sort');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3892
				nTh.removeAttribute('aria-label');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3893
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3894
				/* In ARIA only the first sorting column can be marked as sorting - no multi-sort option */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3895
				if ( aoColumns[i].bSortable )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3896
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3897
					if ( aaSort.length > 0 && aaSort[0][0] == i )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3898
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3899
						nTh.setAttribute('aria-sort', aaSort[0][1]=="asc" ? "ascending" : "descending" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3900
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3901
						var nextSort = (aoColumns[i].asSorting[ aaSort[0][2]+1 ]) ? 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3902
							aoColumns[i].asSorting[ aaSort[0][2]+1 ] : aoColumns[i].asSorting[0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3903
						nTh.setAttribute('aria-label', aoColumns[i].sTitle+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3904
							(nextSort=="asc" ? oAria.sSortAscending : oAria.sSortDescending) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3905
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3906
					else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3907
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3908
						nTh.setAttribute('aria-label', aoColumns[i].sTitle+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3909
							(aoColumns[i].asSorting[0]=="asc" ? oAria.sSortAscending : oAria.sSortDescending) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3910
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3911
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3912
				else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3913
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3914
					nTh.setAttribute('aria-label', aoColumns[i].sTitle);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3915
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3916
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3917
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3918
			/* Tell the draw function that we have sorted the data */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3919
			oSettings.bSorted = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3920
			$(oSettings.oInstance).trigger('sort', oSettings);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3921
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3922
			/* Copy the master data into the draw array and re-draw */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3923
			if ( oSettings.oFeatures.bFilter )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3924
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3925
				/* _fnFilter() will redraw the table for us */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3926
				_fnFilterComplete( oSettings, oSettings.oPreviousSearch, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3927
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3928
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3929
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3930
				oSettings.aiDisplay = oSettings.aiDisplayMaster.slice();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3931
				oSettings._iDisplayStart = 0; /* reset display back to page 0 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3932
				_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3933
				_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3934
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3935
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3936
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3937
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3938
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3939
		 * Attach a sort handler (click) to a node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3940
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3941
		 *  @param {node} nNode node to attach the handler to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3942
		 *  @param {int} iDataIndex column sorting index
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3943
		 *  @param {function} [fnCallback] callback function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3944
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3945
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3946
		function _fnSortAttachListener ( oSettings, nNode, iDataIndex, fnCallback )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3947
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3948
			_fnBindAction( nNode, {}, function (e) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3949
				/* If the column is not sortable - don't to anything */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3950
				if ( oSettings.aoColumns[iDataIndex].bSortable === false )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3951
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3952
					return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3953
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3954
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3955
				/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3956
				 * This is a little bit odd I admit... I declare a temporary function inside the scope of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3957
				 * _fnBuildHead and the click handler in order that the code presented here can be used 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3958
				 * twice - once for when bProcessing is enabled, and another time for when it is 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3959
				 * disabled, as we need to perform slightly different actions.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3960
				 *   Basically the issue here is that the Javascript engine in modern browsers don't 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3961
				 * appear to allow the rendering engine to update the display while it is still excuting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3962
				 * it's thread (well - it does but only after long intervals). This means that the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3963
				 * 'processing' display doesn't appear for a table sort. To break the js thread up a bit
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3964
				 * I force an execution break by using setTimeout - but this breaks the expected 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3965
				 * thread continuation for the end-developer's point of view (their code would execute
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3966
				 * too early), so we on;y do it when we absolutely have to.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3967
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3968
				var fnInnerSorting = function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3969
					var iColumn, iNextSort;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3970
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3971
					/* If the shift key is pressed then we are multipe column sorting */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3972
					if ( e.shiftKey )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3973
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3974
						/* Are we already doing some kind of sort on this column? */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3975
						var bFound = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3976
						for ( var i=0 ; i<oSettings.aaSorting.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3977
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3978
							if ( oSettings.aaSorting[i][0] == iDataIndex )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3979
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3980
								bFound = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3981
								iColumn = oSettings.aaSorting[i][0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3982
								iNextSort = oSettings.aaSorting[i][2]+1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3983
								
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3984
								if ( !oSettings.aoColumns[iColumn].asSorting[iNextSort] )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3985
								{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3986
									/* Reached the end of the sorting options, remove from multi-col sort */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3987
									oSettings.aaSorting.splice( i, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3988
								}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3989
								else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3990
								{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3991
									/* Move onto next sorting direction */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3992
									oSettings.aaSorting[i][1] = oSettings.aoColumns[iColumn].asSorting[iNextSort];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3993
									oSettings.aaSorting[i][2] = iNextSort;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3994
								}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3995
								break;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3996
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3997
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3998
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  3999
						/* No sort yet - add it in */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4000
						if ( bFound === false )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4001
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4002
							oSettings.aaSorting.push( [ iDataIndex, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4003
								oSettings.aoColumns[iDataIndex].asSorting[0], 0 ] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4004
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4005
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4006
					else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4007
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4008
						/* If no shift key then single column sort */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4009
						if ( oSettings.aaSorting.length == 1 && oSettings.aaSorting[0][0] == iDataIndex )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4010
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4011
							iColumn = oSettings.aaSorting[0][0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4012
							iNextSort = oSettings.aaSorting[0][2]+1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4013
							if ( !oSettings.aoColumns[iColumn].asSorting[iNextSort] )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4014
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4015
								iNextSort = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4016
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4017
							oSettings.aaSorting[0][1] = oSettings.aoColumns[iColumn].asSorting[iNextSort];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4018
							oSettings.aaSorting[0][2] = iNextSort;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4019
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4020
						else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4021
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4022
							oSettings.aaSorting.splice( 0, oSettings.aaSorting.length );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4023
							oSettings.aaSorting.push( [ iDataIndex, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4024
								oSettings.aoColumns[iDataIndex].asSorting[0], 0 ] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4025
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4026
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4027
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4028
					/* Run the sort */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4029
					_fnSort( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4030
				}; /* /fnInnerSorting */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4031
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4032
				if ( !oSettings.oFeatures.bProcessing )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4033
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4034
					fnInnerSorting();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4035
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4036
				else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4037
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4038
					_fnProcessingDisplay( oSettings, true );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4039
					setTimeout( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4040
						fnInnerSorting();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4041
						if ( !oSettings.oFeatures.bServerSide )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4042
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4043
							_fnProcessingDisplay( oSettings, false );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4044
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4045
					}, 0 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4046
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4047
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4048
				/* Call the user specified callback function - used for async user interaction */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4049
				if ( typeof fnCallback == 'function' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4050
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4051
					fnCallback( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4052
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4053
			} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4054
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4055
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4056
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4057
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4058
		 * Set the sorting classes on the header, Note: it is safe to call this function 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4059
		 * when bSort and bSortClasses are false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4060
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4061
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4062
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4063
		function _fnSortingClasses( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4064
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4065
			var i, iLen, j, jLen, iFound;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4066
			var aaSort, sClass;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4067
			var iColumns = oSettings.aoColumns.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4068
			var oClasses = oSettings.oClasses;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4069
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4070
			for ( i=0 ; i<iColumns ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4071
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4072
				if ( oSettings.aoColumns[i].bSortable )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4073
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4074
					$(oSettings.aoColumns[i].nTh).removeClass( oClasses.sSortAsc +" "+ oClasses.sSortDesc +
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4075
						" "+ oSettings.aoColumns[i].sSortingClass );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4076
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4077
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4078
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4079
			if ( oSettings.aaSortingFixed !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4080
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4081
				aaSort = oSettings.aaSortingFixed.concat( oSettings.aaSorting );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4082
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4083
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4084
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4085
				aaSort = oSettings.aaSorting.slice();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4086
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4087
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4088
			/* Apply the required classes to the header */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4089
			for ( i=0 ; i<oSettings.aoColumns.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4090
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4091
				if ( oSettings.aoColumns[i].bSortable )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4092
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4093
					sClass = oSettings.aoColumns[i].sSortingClass;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4094
					iFound = -1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4095
					for ( j=0 ; j<aaSort.length ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4096
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4097
						if ( aaSort[j][0] == i )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4098
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4099
							sClass = ( aaSort[j][1] == "asc" ) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4100
								oClasses.sSortAsc : oClasses.sSortDesc;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4101
							iFound = j;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4102
							break;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4103
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4104
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4105
					$(oSettings.aoColumns[i].nTh).addClass( sClass );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4106
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4107
					if ( oSettings.bJUI )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4108
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4109
						/* jQuery UI uses extra markup */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4110
						var jqSpan = $("span."+oClasses.sSortIcon,  oSettings.aoColumns[i].nTh);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4111
						jqSpan.removeClass(oClasses.sSortJUIAsc +" "+ oClasses.sSortJUIDesc +" "+ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4112
							oClasses.sSortJUI +" "+ oClasses.sSortJUIAscAllowed +" "+ oClasses.sSortJUIDescAllowed );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4113
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4114
						var sSpanClass;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4115
						if ( iFound == -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4116
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4117
						 	sSpanClass = oSettings.aoColumns[i].sSortingClassJUI;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4118
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4119
						else if ( aaSort[iFound][1] == "asc" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4120
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4121
							sSpanClass = oClasses.sSortJUIAsc;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4122
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4123
						else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4124
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4125
							sSpanClass = oClasses.sSortJUIDesc;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4126
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4127
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4128
						jqSpan.addClass( sSpanClass );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4129
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4130
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4131
				else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4132
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4133
					/* No sorting on this column, so add the base class. This will have been assigned by
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4134
					 * _fnAddColumn
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4135
					 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4136
					$(oSettings.aoColumns[i].nTh).addClass( oSettings.aoColumns[i].sSortingClass );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4137
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4138
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4139
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4140
			/* 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4141
			 * Apply the required classes to the table body
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4142
			 * Note that this is given as a feature switch since it can significantly slow down a sort
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4143
			 * on large data sets (adding and removing of classes is always slow at the best of times..)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4144
			 * Further to this, note that this code is admitadly fairly ugly. It could be made a lot 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4145
			 * simpiler using jQuery selectors and add/removeClass, but that is significantly slower
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4146
			 * (on the order of 5 times slower) - hence the direct DOM manipulation here.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4147
			 * Note that for defered drawing we do use jQuery - the reason being that taking the first
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4148
			 * row found to see if the whole column needs processed can miss classes since the first
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4149
			 * column might be new.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4150
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4151
			sClass = oClasses.sSortColumn;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4152
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4153
			if ( oSettings.oFeatures.bSort && oSettings.oFeatures.bSortClasses )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4154
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4155
				var nTds = _fnGetTdNodes( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4156
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4157
				/* Remove the old classes */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4158
				if ( oSettings.oFeatures.bDeferRender )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4159
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4160
					$(nTds).removeClass(sClass+'1 '+sClass+'2 '+sClass+'3');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4161
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4162
				else if ( nTds.length >= iColumns )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4163
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4164
					for ( i=0 ; i<iColumns ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4165
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4166
						if ( nTds[i].className.indexOf(sClass+"1") != -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4167
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4168
							for ( j=0, jLen=(nTds.length/iColumns) ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4169
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4170
								nTds[(iColumns*j)+i].className = 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4171
									$.trim( nTds[(iColumns*j)+i].className.replace( sClass+"1", "" ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4172
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4173
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4174
						else if ( nTds[i].className.indexOf(sClass+"2") != -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4175
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4176
							for ( j=0, jLen=(nTds.length/iColumns) ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4177
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4178
								nTds[(iColumns*j)+i].className = 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4179
									$.trim( nTds[(iColumns*j)+i].className.replace( sClass+"2", "" ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4180
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4181
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4182
						else if ( nTds[i].className.indexOf(sClass+"3") != -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4183
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4184
							for ( j=0, jLen=(nTds.length/iColumns) ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4185
							{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4186
								nTds[(iColumns*j)+i].className = 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4187
									$.trim( nTds[(iColumns*j)+i].className.replace( " "+sClass+"3", "" ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4188
							}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4189
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4190
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4191
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4192
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4193
				/* Add the new classes to the table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4194
				var iClass = 1, iTargetCol;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4195
				for ( i=0 ; i<aaSort.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4196
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4197
					iTargetCol = parseInt( aaSort[i][0], 10 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4198
					for ( j=0, jLen=(nTds.length/iColumns) ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4199
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4200
						nTds[(iColumns*j)+iTargetCol].className += " "+sClass+iClass;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4201
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4202
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4203
					if ( iClass < 3 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4204
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4205
						iClass++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4206
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4207
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4208
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4209
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4210
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4211
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4212
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4213
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4214
		 * Save the state of a table in a cookie such that the page can be reloaded
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4215
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4216
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4217
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4218
		function _fnSaveState ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4219
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4220
			if ( !oSettings.oFeatures.bStateSave || oSettings.bDestroying )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4221
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4222
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4223
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4224
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4225
			/* Store the interesting variables */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4226
			var i, iLen, bInfinite=oSettings.oScroll.bInfinite;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4227
			var oState = {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4228
				"iCreate":      new Date().getTime(),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4229
				"iStart":       (bInfinite ? 0 : oSettings._iDisplayStart),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4230
				"iEnd":         (bInfinite ? oSettings._iDisplayLength : oSettings._iDisplayEnd),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4231
				"iLength":      oSettings._iDisplayLength,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4232
				"aaSorting":    $.extend( true, [], oSettings.aaSorting ),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4233
				"oSearch":      $.extend( true, {}, oSettings.oPreviousSearch ),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4234
				"aoSearchCols": $.extend( true, [], oSettings.aoPreSearchCols ),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4235
				"abVisCols":    []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4236
			};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4237
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4238
			for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4239
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4240
				oState.abVisCols.push( oSettings.aoColumns[i].bVisible );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4241
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4242
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4243
			_fnCallbackFire( oSettings, "aoStateSaveParams", 'stateSaveParams', [oSettings, oState] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4244
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4245
			oSettings.fnStateSave.call( oSettings.oInstance, oSettings, oState );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4246
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4247
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4248
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4249
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4250
		 * Attempt to load a saved table state from a cookie
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4251
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4252
		 *  @param {object} oInit DataTables init object so we can override settings
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4253
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4254
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4255
		function _fnLoadState ( oSettings, oInit )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4256
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4257
			if ( !oSettings.oFeatures.bStateSave )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4258
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4259
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4260
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4261
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4262
			var oData = oSettings.fnStateLoad.call( oSettings.oInstance, oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4263
			if ( !oData )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4264
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4265
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4266
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4267
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4268
			/* Allow custom and plug-in manipulation functions to alter the saved data set and
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4269
			 * cancelling of loading by returning false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4270
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4271
			var abStateLoad = _fnCallbackFire( oSettings, 'aoStateLoadParams', 'stateLoadParams', [oSettings, oData] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4272
			if ( $.inArray( false, abStateLoad ) !== -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4273
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4274
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4275
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4276
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4277
			/* Store the saved state so it might be accessed at any time */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4278
			oSettings.oLoadedState = $.extend( true, {}, oData );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4279
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4280
			/* Restore key features */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4281
			oSettings._iDisplayStart    = oData.iStart;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4282
			oSettings.iInitDisplayStart = oData.iStart;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4283
			oSettings._iDisplayEnd      = oData.iEnd;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4284
			oSettings._iDisplayLength   = oData.iLength;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4285
			oSettings.aaSorting         = oData.aaSorting.slice();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4286
			oSettings.saved_aaSorting   = oData.aaSorting.slice();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4287
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4288
			/* Search filtering  */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4289
			$.extend( oSettings.oPreviousSearch, oData.oSearch );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4290
			$.extend( true, oSettings.aoPreSearchCols, oData.aoSearchCols );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4291
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4292
			/* Column visibility state
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4293
			 * Pass back visibiliy settings to the init handler, but to do not here override
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4294
			 * the init object that the user might have passed in
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4295
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4296
			oInit.saved_aoColumns = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4297
			for ( var i=0 ; i<oData.abVisCols.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4298
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4299
				oInit.saved_aoColumns[i] = {};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4300
				oInit.saved_aoColumns[i].bVisible = oData.abVisCols[i];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4301
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4302
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4303
			_fnCallbackFire( oSettings, 'aoStateLoaded', 'stateLoaded', [oSettings, oData] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4304
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4305
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4306
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4307
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4308
		 * Create a new cookie with a value to store the state of a table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4309
		 *  @param {string} sName name of the cookie to create
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4310
		 *  @param {string} sValue the value the cookie should take
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4311
		 *  @param {int} iSecs duration of the cookie
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4312
		 *  @param {string} sBaseName sName is made up of the base + file name - this is the base
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4313
		 *  @param {function} fnCallback User definable function to modify the cookie
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4314
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4315
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4316
		function _fnCreateCookie ( sName, sValue, iSecs, sBaseName, fnCallback )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4317
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4318
			var date = new Date();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4319
			date.setTime( date.getTime()+(iSecs*1000) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4320
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4321
			/* 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4322
			 * Shocking but true - it would appear IE has major issues with having the path not having
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4323
			 * a trailing slash on it. We need the cookie to be available based on the path, so we
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4324
			 * have to append the file name to the cookie name. Appalling. Thanks to vex for adding the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4325
			 * patch to use at least some of the path
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4326
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4327
			var aParts = window.location.pathname.split('/');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4328
			var sNameFile = sName + '_' + aParts.pop().replace(/[\/:]/g,"").toLowerCase();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4329
			var sFullCookie, oData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4330
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4331
			if ( fnCallback !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4332
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4333
				oData = (typeof $.parseJSON === 'function') ? 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4334
					$.parseJSON( sValue ) : eval( '('+sValue+')' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4335
				sFullCookie = fnCallback( sNameFile, oData, date.toGMTString(),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4336
					aParts.join('/')+"/" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4337
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4338
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4339
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4340
				sFullCookie = sNameFile + "=" + encodeURIComponent(sValue) +
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4341
					"; expires=" + date.toGMTString() +"; path=" + aParts.join('/')+"/";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4342
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4343
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4344
			/* Are we going to go over the cookie limit of 4KiB? If so, try to delete a cookies
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4345
			 * belonging to DataTables. This is FAR from bullet proof
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4346
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4347
			var sOldName="", iOldTime=9999999999999;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4348
			var iLength = _fnReadCookie( sNameFile )!==null ? document.cookie.length : 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4349
				sFullCookie.length + document.cookie.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4350
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4351
			if ( iLength+10 > 4096 ) /* Magic 10 for padding */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4352
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4353
				var aCookies =document.cookie.split(';');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4354
				for ( var i=0, iLen=aCookies.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4355
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4356
					if ( aCookies[i].indexOf( sBaseName ) != -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4357
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4358
						/* It's a DataTables cookie, so eval it and check the time stamp */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4359
						var aSplitCookie = aCookies[i].split('=');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4360
						try { oData = eval( '('+decodeURIComponent(aSplitCookie[1])+')' ); }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4361
						catch( e ) { continue; }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4362
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4363
						if ( oData.iCreate && oData.iCreate < iOldTime )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4364
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4365
							sOldName = aSplitCookie[0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4366
							iOldTime = oData.iCreate;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4367
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4368
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4369
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4370
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4371
				if ( sOldName !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4372
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4373
					document.cookie = sOldName+"=; expires=Thu, 01-Jan-1970 00:00:01 GMT; path="+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4374
						aParts.join('/') + "/";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4375
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4376
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4377
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4378
			document.cookie = sFullCookie;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4379
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4380
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4381
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4382
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4383
		 * Read an old cookie to get a cookie with an old table state
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4384
		 *  @param {string} sName name of the cookie to read
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4385
		 *  @returns {string} contents of the cookie - or null if no cookie with that name found
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4386
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4387
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4388
		function _fnReadCookie ( sName )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4389
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4390
			var
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4391
				aParts = window.location.pathname.split('/'),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4392
				sNameEQ = sName + '_' + aParts[aParts.length-1].replace(/[\/:]/g,"").toLowerCase() + '=',
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4393
			 	sCookieContents = document.cookie.split(';');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4394
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4395
			for( var i=0 ; i<sCookieContents.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4396
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4397
				var c = sCookieContents[i];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4398
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4399
				while (c.charAt(0)==' ')
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4400
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4401
					c = c.substring(1,c.length);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4402
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4403
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4404
				if (c.indexOf(sNameEQ) === 0)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4405
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4406
					return decodeURIComponent( c.substring(sNameEQ.length,c.length) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4407
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4408
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4409
			return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4410
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4411
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4412
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4413
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4414
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4415
		 * Return the settings object for a particular table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4416
		 *  @param {node} nTable table we are using as a dataTable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4417
		 *  @returns {object} Settings object - or null if not found
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4418
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4419
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4420
		function _fnSettingsFromNode ( nTable )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4421
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4422
			for ( var i=0 ; i<DataTable.settings.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4423
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4424
				if ( DataTable.settings[i].nTable === nTable )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4425
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4426
					return DataTable.settings[i];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4427
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4428
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4429
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4430
			return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4431
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4432
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4433
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4434
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4435
		 * Return an array with the TR nodes for the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4436
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4437
		 *  @returns {array} TR array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4438
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4439
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4440
		function _fnGetTrNodes ( oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4441
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4442
			var aNodes = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4443
			var aoData = oSettings.aoData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4444
			for ( var i=0, iLen=aoData.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4445
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4446
				if ( aoData[i].nTr !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4447
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4448
					aNodes.push( aoData[i].nTr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4449
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4450
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4451
			return aNodes;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4452
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4453
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4454
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4455
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4456
		 * Return an flat array with all TD nodes for the table, or row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4457
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4458
		 *  @param {int} [iIndividualRow] aoData index to get the nodes for - optional 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4459
		 *    if not given then the return array will contain all nodes for the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4460
		 *  @returns {array} TD array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4461
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4462
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4463
		function _fnGetTdNodes ( oSettings, iIndividualRow )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4464
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4465
			var anReturn = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4466
			var iCorrector;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4467
			var anTds;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4468
			var iRow, iRows=oSettings.aoData.length,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4469
				iColumn, iColumns, oData, sNodeName, iStart=0, iEnd=iRows;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4470
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4471
			/* Allow the collection to be limited to just one row */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4472
			if ( iIndividualRow !== undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4473
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4474
				iStart = iIndividualRow;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4475
				iEnd = iIndividualRow+1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4476
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4477
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4478
			for ( iRow=iStart ; iRow<iEnd ; iRow++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4479
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4480
				oData = oSettings.aoData[iRow];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4481
				if ( oData.nTr !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4482
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4483
					/* get the TD child nodes - taking into account text etc nodes */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4484
					anTds = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4485
					for ( iColumn=0, iColumns=oData.nTr.childNodes.length ; iColumn<iColumns ; iColumn++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4486
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4487
						sNodeName = oData.nTr.childNodes[iColumn].nodeName.toLowerCase();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4488
						if ( sNodeName == 'td' || sNodeName == 'th' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4489
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4490
							anTds.push( oData.nTr.childNodes[iColumn] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4491
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4492
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4493
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4494
					iCorrector = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4495
					for ( iColumn=0, iColumns=oSettings.aoColumns.length ; iColumn<iColumns ; iColumn++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4496
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4497
						if ( oSettings.aoColumns[iColumn].bVisible )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4498
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4499
							anReturn.push( anTds[iColumn-iCorrector] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4500
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4501
						else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4502
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4503
							anReturn.push( oData._anHidden[iColumn] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4504
							iCorrector++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4505
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4506
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4507
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4508
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4509
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4510
			return anReturn;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4511
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4512
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4513
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4514
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4515
		 * Log an error message
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4516
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4517
		 *  @param {int} iLevel log error messages, or display them to the user
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4518
		 *  @param {string} sMesg error message
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4519
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4520
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4521
		function _fnLog( oSettings, iLevel, sMesg )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4522
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4523
			var sAlert = (oSettings===null) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4524
				"DataTables warning: "+sMesg :
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4525
				"DataTables warning (table id = '"+oSettings.sTableId+"'): "+sMesg;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4526
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4527
			if ( iLevel === 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4528
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4529
				if ( DataTable.ext.sErrMode == 'alert' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4530
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4531
					alert( sAlert );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4532
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4533
				else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4534
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4535
					throw sAlert;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4536
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4537
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4538
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4539
			else if ( console !== undefined && console.log )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4540
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4541
				console.log( sAlert );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4542
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4543
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4544
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4545
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4546
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4547
		 * See if a property is defined on one object, if so assign it to the other object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4548
		 *  @param {object} oRet target object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4549
		 *  @param {object} oSrc source object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4550
		 *  @param {string} sName property
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4551
		 *  @param {string} [sMappedName] name to map too - optional, sName used if not given
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4552
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4553
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4554
		function _fnMap( oRet, oSrc, sName, sMappedName )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4555
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4556
			if ( sMappedName === undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4557
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4558
				sMappedName = sName;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4559
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4560
			if ( oSrc[sName] !== undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4561
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4562
				oRet[sMappedName] = oSrc[sName];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4563
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4564
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4565
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4566
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4567
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4568
		 * Extend objects - very similar to jQuery.extend, but deep copy objects, and shallow
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4569
		 * copy arrays. The reason we need to do this, is that we don't want to deep copy array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4570
		 * init values (such as aaSorting) since the dev wouldn't be able to override them, but
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4571
		 * we do want to deep copy arrays.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4572
		 *  @param {object} oOut Object to extend
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4573
		 *  @param {object} oExtender Object from which the properties will be applied to oOut
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4574
		 *  @returns {object} oOut Reference, just for convenience - oOut === the return.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4575
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4576
		 *  @todo This doesn't take account of arrays inside the deep copied objects.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4577
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4578
		function _fnExtend( oOut, oExtender )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4579
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4580
			for ( var prop in oOut )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4581
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4582
				if ( oOut.hasOwnProperty(prop) && oExtender[prop] !== undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4583
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4584
					if ( typeof oInit[prop] === 'object' && $.isArray(oExtender[prop]) === false )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4585
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4586
						$.extend( true, oOut[prop], oExtender[prop] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4587
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4588
					else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4589
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4590
						oOut[prop] = oExtender[prop];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4591
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4592
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4593
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4594
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4595
			return oOut;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4596
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4597
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4598
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4599
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4600
		 * Bind an event handers to allow a click or return key to activate the callback.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4601
		 * This is good for accessability since a return on the keyboard will have the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4602
		 * same effect as a click, if the element has focus.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4603
		 *  @param {element} n Element to bind the action to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4604
		 *  @param {object} oData Data object to pass to the triggered function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4605
		 *  @param {function) fn Callback function for when the event is triggered
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4606
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4607
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4608
		function _fnBindAction( n, oData, fn )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4609
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4610
			$(n)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4611
				.bind( 'click.DT', oData, function (e) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4612
						fn(e);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4613
						n.blur(); // Remove focus outline for mouse users
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4614
					} )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4615
				.bind( 'keypress.DT', oData, function (e){
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4616
					if ( e.which === 13 ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4617
						fn(e);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4618
					} } )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4619
				.bind( 'selectstart.DT', function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4620
					/* Take the brutal approach to cancelling text selection */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4621
					return false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4622
					} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4623
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4624
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4625
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4626
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4627
		 * Register a callback function. Easily allows a callback function to be added to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4628
		 * an array store of callback functions that can then all be called together.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4629
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4630
		 *  @param {string} sStore Name of the array storeage for the callbacks in oSettings
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4631
		 *  @param {function} fn Function to be called back
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4632
		 *  @param {string) sName Identifying name for the callback (i.e. a label)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4633
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4634
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4635
		function _fnCallbackReg( oSettings, sStore, fn, sName )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4636
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4637
			if ( fn )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4638
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4639
				oSettings[sStore].push( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4640
					"fn": fn,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4641
					"sName": sName
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4642
				} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4643
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4644
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4645
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4646
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4647
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4648
		 * Fire callback functions and trigger events. Note that the loop over the callback
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4649
		 * array store is done backwards! Further note that you do not want to fire off triggers
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4650
		 * in time sensitive applications (for example cell creation) as its slow.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4651
		 *  @param {object} oSettings dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4652
		 *  @param {string} sStore Name of the array storeage for the callbacks in oSettings
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4653
		 *  @param {string} sTrigger Name of the jQuery custom event to trigger. If null no trigger
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4654
		 *    is fired
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4655
		 *  @param {array) aArgs Array of arguments to pass to the callback function / trigger
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4656
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4657
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4658
		function _fnCallbackFire( oSettings, sStore, sTrigger, aArgs )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4659
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4660
			var aoStore = oSettings[sStore];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4661
			var aRet =[];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4662
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4663
			for ( var i=aoStore.length-1 ; i>=0 ; i-- )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4664
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4665
				aRet.push( aoStore[i].fn.apply( oSettings.oInstance, aArgs ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4666
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4667
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4668
			if ( sTrigger !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4669
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4670
				$(oSettings.oInstance).trigger(sTrigger, aArgs);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4671
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4672
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4673
			return aRet;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4674
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4675
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4676
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4677
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4678
		 * JSON stringify. If JSON.stringify it provided by the browser, json2.js or any other
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4679
		 * library, then we use that as it is fast, safe and accurate. If the function isn't 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4680
		 * available then we need to built it ourselves - the insperation for this function comes
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4681
		 * from Craig Buckler ( http://www.sitepoint.com/javascript-json-serialization/ ). It is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4682
		 * not perfect and absolutely should not be used as a replacement to json2.js - but it does
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4683
		 * do what we need, without requiring a dependency for DataTables.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4684
		 *  @param {object} o JSON object to be converted
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4685
		 *  @returns {string} JSON string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4686
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4687
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4688
		var _fnJsonString = (window.JSON) ? JSON.stringify : function( o )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4689
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4690
			/* Not an object or array */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4691
			var sType = typeof o;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4692
			if (sType !== "object" || o === null)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4693
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4694
				// simple data type
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4695
				if (sType === "string")
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4696
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4697
					o = '"'+o+'"';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4698
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4699
				return o+"";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4700
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4701
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4702
			/* If object or array, need to recurse over it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4703
			var
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4704
				sProp, mValue,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4705
				json = [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4706
				bArr = $.isArray(o);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4707
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4708
			for (sProp in o)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4709
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4710
				mValue = o[sProp];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4711
				sType = typeof mValue;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4712
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4713
				if (sType === "string")
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4714
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4715
					mValue = '"'+mValue+'"';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4716
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4717
				else if (sType === "object" && mValue !== null)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4718
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4719
					mValue = _fnJsonString(mValue);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4720
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4721
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4722
				json.push((bArr ? "" : '"'+sProp+'":') + mValue);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4723
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4724
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4725
			return (bArr ? "[" : "{") + json + (bArr ? "]" : "}");
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4726
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4727
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4728
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4729
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4730
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4731
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4732
		 * Perform a jQuery selector action on the table's TR elements (from the tbody) and
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4733
		 * return the resulting jQuery object.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4734
		 *  @param {string|node|jQuery} sSelector jQuery selector or node collection to act on
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4735
		 *  @param {object} [oOpts] Optional parameters for modifying the rows to be included
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4736
		 *  @param {string} [oOpts.filter=none] Select TR elements that meet the current filter
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4737
		 *    criterion ("applied") or all TR elements (i.e. no filter).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4738
		 *  @param {string} [oOpts.order=current] Order of the TR elements in the processed array.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4739
		 *    Can be either 'current', whereby the current sorting of the table is used, or
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4740
		 *    'original' whereby the original order the data was read into the table is used.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4741
		 *  @param {string} [oOpts.page=all] Limit the selection to the currently displayed page
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4742
		 *    ("current") or not ("all"). If 'current' is given, then order is assumed to be 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4743
		 *    'current' and filter is 'applied', regardless of what they might be given as.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4744
		 *  @returns {object} jQuery object, filtered by the given selector.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4745
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4746
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4747
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4748
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4749
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4750
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4751
		 *      // Highlight every second row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4752
		 *      oTable.$('tr:odd').css('backgroundColor', 'blue');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4753
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4754
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4755
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4756
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4757
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4758
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4759
		 *      // Filter to rows with 'Webkit' in them, add a background colour and then
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4760
		 *      // remove the filter, thus highlighting the 'Webkit' rows only.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4761
		 *      oTable.fnFilter('Webkit');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4762
		 *      oTable.$('tr', {"filter": "applied"}).css('backgroundColor', 'blue');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4763
		 *      oTable.fnFilter('');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4764
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4765
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4766
		this.$ = function ( sSelector, oOpts )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4767
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4768
			var i, iLen, a = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4769
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4770
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4771
			if ( !oOpts )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4772
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4773
				oOpts = {};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4774
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4775
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4776
			oOpts = $.extend( {}, {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4777
				"filter": "none", // applied
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4778
				"order": "current", // "original"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4779
				"page": "all" // current
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4780
			}, oOpts );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4781
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4782
			// Current page implies that order=current and fitler=applied, since it is fairly
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4783
			// senseless otherwise
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4784
			if ( oOpts.page == 'current' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4785
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4786
				for ( i=oSettings._iDisplayStart, iLen=oSettings.fnDisplayEnd() ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4787
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4788
					a.push( oSettings.aoData[ oSettings.aiDisplay[i] ].nTr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4789
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4790
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4791
			else if ( oOpts.order == "current" && oOpts.filter == "none" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4792
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4793
				for ( i=0, iLen=oSettings.aiDisplayMaster.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4794
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4795
					a.push( oSettings.aoData[ oSettings.aiDisplayMaster[i] ].nTr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4796
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4797
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4798
			else if ( oOpts.order == "current" && oOpts.filter == "applied" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4799
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4800
				for ( i=0, iLen=oSettings.aiDisplay.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4801
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4802
					a.push( oSettings.aoData[ oSettings.aiDisplay[i] ].nTr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4803
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4804
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4805
			else if ( oOpts.order == "original" && oOpts.filter == "none" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4806
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4807
				for ( i=0, iLen=oSettings.aoData.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4808
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4809
					a.push( oSettings.aoData[ i ].nTr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4810
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4811
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4812
			else if ( oOpts.order == "original" && oOpts.filter == "applied" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4813
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4814
				for ( i=0, iLen=oSettings.aoData.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4815
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4816
					if ( $.inArray( i, oSettings.aiDisplay ) !== -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4817
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4818
						a.push( oSettings.aoData[ i ].nTr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4819
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4820
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4821
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4822
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4823
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4824
				_fnLog( oSettings, 1, "Unknown selection options" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4825
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4826
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4827
			/* We need to filter on the TR elements and also 'find' in their descendants
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4828
			 * to make the selector act like it would in a full table - so we need
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4829
			 * to build both results and then combine them together
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4830
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4831
			var jqA = $(a);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4832
			var jqTRs = jqA.filter( sSelector );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4833
			var jqDescendants = jqA.find( sSelector );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4834
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4835
			return $( [].concat($.makeArray(jqTRs), $.makeArray(jqDescendants)) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4836
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4837
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4838
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4839
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4840
		 * Almost identical to $ in operation, but in this case returns the data for the matched
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4841
		 * rows - as such, the jQuery selector used should match TR row nodes or TD/TH cell nodes
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4842
		 * rather than any decendents, so the data can be obtained for the row/cell. If matching
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4843
		 * rows are found, the data returned is the original data array/object that was used to  
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4844
		 * create the row (or a generated array if from a DOM source).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4845
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4846
		 * This method is often useful incombination with $ where both functions are given the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4847
		 * same parameters and the array indexes will match identically.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4848
		 *  @param {string|node|jQuery} sSelector jQuery selector or node collection to act on
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4849
		 *  @param {object} [oOpts] Optional parameters for modifying the rows to be included
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4850
		 *  @param {string} [oOpts.filter=none] Select elements that meet the current filter
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4851
		 *    criterion ("applied") or all elements (i.e. no filter).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4852
		 *  @param {string} [oOpts.order=current] Order of the data in the processed array.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4853
		 *    Can be either 'current', whereby the current sorting of the table is used, or
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4854
		 *    'original' whereby the original order the data was read into the table is used.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4855
		 *  @param {string} [oOpts.page=all] Limit the selection to the currently displayed page
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4856
		 *    ("current") or not ("all"). If 'current' is given, then order is assumed to be 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4857
		 *    'current' and filter is 'applied', regardless of what they might be given as.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4858
		 *  @returns {array} Data for the matched elements. If any elements, as a result of the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4859
		 *    selector, were not TR, TD or TH elements in the DataTable, they will have a null 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4860
		 *    entry in the array.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4861
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4862
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4863
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4864
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4865
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4866
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4867
		 *      // Get the data from the first row in the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4868
		 *      var data = oTable._('tr:first');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4869
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4870
		 *      // Do something useful with the data
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4871
		 *      alert( "First cell is: "+data[0] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4872
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4873
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4874
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4875
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4876
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4877
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4878
		 *      // Filter to 'Webkit' and get all data for 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4879
		 *      oTable.fnFilter('Webkit');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4880
		 *      var data = oTable._('tr', {"filter": "applied"});
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4881
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4882
		 *      // Do something with the data
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4883
		 *      alert( data.length+" rows matched the filter" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4884
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4885
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4886
		this._ = function ( sSelector, oOpts )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4887
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4888
			var aOut = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4889
			var i, iLen, iIndex;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4890
			var aTrs = this.$( sSelector, oOpts );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4891
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4892
			for ( i=0, iLen=aTrs.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4893
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4894
				aOut.push( this.fnGetData(aTrs[i]) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4895
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4896
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4897
			return aOut;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4898
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4899
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4900
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4901
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4902
		 * Add a single new row or multiple rows of data to the table. Please note
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4903
		 * that this is suitable for client-side processing only - if you are using 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4904
		 * server-side processing (i.e. "bServerSide": true), then to add data, you
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4905
		 * must add it to the data source, i.e. the server-side, through an Ajax call.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4906
		 *  @param {array|object} mData The data to be added to the table. This can be:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4907
		 *    <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4908
		 *      <li>1D array of data - add a single row with the data provided</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4909
		 *      <li>2D array of arrays - add multiple rows in a single call</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4910
		 *      <li>object - data object when using <i>mDataProp</i></li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4911
		 *      <li>array of objects - multiple data objects when using <i>mDataProp</i></li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4912
		 *    </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4913
		 *  @param {bool} [bRedraw=true] redraw the table or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4914
		 *  @returns {array} An array of integers, representing the list of indexes in 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4915
		 *    <i>aoData</i> ({@link DataTable.models.oSettings}) that have been added to 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4916
		 *    the table.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4917
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4918
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4919
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4920
		 *    // Global var for counter
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4921
		 *    var giCount = 2;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4922
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4923
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4924
		 *      $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4925
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4926
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4927
		 *    function fnClickAddRow() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4928
		 *      $('#example').dataTable().fnAddData( [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4929
		 *        giCount+".1",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4930
		 *        giCount+".2",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4931
		 *        giCount+".3",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4932
		 *        giCount+".4" ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4933
		 *      );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4934
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4935
		 *      giCount++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4936
		 *    }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4937
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4938
		this.fnAddData = function( mData, bRedraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4939
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4940
			if ( mData.length === 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4941
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4942
				return [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4943
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4944
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4945
			var aiReturn = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4946
			var iTest;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4947
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4948
			/* Find settings from table node */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4949
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4950
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4951
			/* Check if we want to add multiple rows or not */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4952
			if ( typeof mData[0] === "object" && mData[0] !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4953
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4954
				for ( var i=0 ; i<mData.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4955
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4956
					iTest = _fnAddData( oSettings, mData[i] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4957
					if ( iTest == -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4958
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4959
						return aiReturn;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4960
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4961
					aiReturn.push( iTest );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4962
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4963
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4964
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4965
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4966
				iTest = _fnAddData( oSettings, mData );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4967
				if ( iTest == -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4968
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4969
					return aiReturn;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4970
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4971
				aiReturn.push( iTest );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4972
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4973
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4974
			oSettings.aiDisplay = oSettings.aiDisplayMaster.slice();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4975
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4976
			if ( bRedraw === undefined || bRedraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4977
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4978
				_fnReDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4979
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4980
			return aiReturn;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4981
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4982
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4983
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4984
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4985
		 * This function will make DataTables recalculate the column sizes, based on the data 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4986
		 * contained in the table and the sizes applied to the columns (in the DOM, CSS or 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4987
		 * through the sWidth parameter). This can be useful when the width of the table's 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4988
		 * parent element changes (for example a window resize).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4989
		 *  @param {boolean} [bRedraw=true] Redraw the table or not, you will typically want to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4990
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4991
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4992
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4993
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4994
		 *      var oTable = $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4995
		 *        "sScrollY": "200px",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4996
		 *        "bPaginate": false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4997
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4998
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  4999
		 *      $(window).bind('resize', function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5000
		 *        oTable.fnAdjustColumnSizing();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5001
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5002
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5003
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5004
		this.fnAdjustColumnSizing = function ( bRedraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5005
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5006
			var oSettings = _fnSettingsFromNode(this[DataTable.ext.iApiIndex]);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5007
			_fnAdjustColumnSizing( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5008
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5009
			if ( bRedraw === undefined || bRedraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5010
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5011
				this.fnDraw( false );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5012
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5013
			else if ( oSettings.oScroll.sX !== "" || oSettings.oScroll.sY !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5014
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5015
				/* If not redrawing, but scrolling, we want to apply the new column sizes anyway */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5016
				this.oApi._fnScrollDraw(oSettings);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5017
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5018
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5019
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5020
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5021
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5022
		 * Quickly and simply clear a table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5023
		 *  @param {bool} [bRedraw=true] redraw the table or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5024
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5025
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5026
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5027
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5028
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5029
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5030
		 *      // Immediately 'nuke' the current rows (perhaps waiting for an Ajax callback...)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5031
		 *      oTable.fnClearTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5032
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5033
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5034
		this.fnClearTable = function( bRedraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5035
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5036
			/* Find settings from table node */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5037
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5038
			_fnClearTable( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5039
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5040
			if ( bRedraw === undefined || bRedraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5041
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5042
				_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5043
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5044
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5045
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5046
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5047
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5048
		 * The exact opposite of 'opening' a row, this function will close any rows which 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5049
		 * are currently 'open'.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5050
		 *  @param {node} nTr the table row to 'close'
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5051
		 *  @returns {int} 0 on success, or 1 if failed (can't find the row)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5052
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5053
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5054
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5055
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5056
		 *      var oTable;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5057
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5058
		 *      // 'open' an information row when a row is clicked on
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5059
		 *      $('#example tbody tr').click( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5060
		 *        if ( oTable.fnIsOpen(this) ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5061
		 *          oTable.fnClose( this );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5062
		 *        } else {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5063
		 *          oTable.fnOpen( this, "Temporary row opened", "info_row" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5064
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5065
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5066
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5067
		 *      oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5068
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5069
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5070
		this.fnClose = function( nTr )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5071
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5072
			/* Find settings from table node */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5073
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5074
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5075
			for ( var i=0 ; i<oSettings.aoOpenRows.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5076
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5077
				if ( oSettings.aoOpenRows[i].nParent == nTr )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5078
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5079
					var nTrParent = oSettings.aoOpenRows[i].nTr.parentNode;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5080
					if ( nTrParent )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5081
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5082
						/* Remove it if it is currently on display */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5083
						nTrParent.removeChild( oSettings.aoOpenRows[i].nTr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5084
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5085
					oSettings.aoOpenRows.splice( i, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5086
					return 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5087
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5088
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5089
			return 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5090
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5091
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5092
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5093
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5094
		 * Remove a row for the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5095
		 *  @param {mixed} mTarget The index of the row from aoData to be deleted, or
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5096
		 *    the TR element you want to delete
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5097
		 *  @param {function|null} [fnCallBack] Callback function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5098
		 *  @param {bool} [bRedraw=true] Redraw the table or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5099
		 *  @returns {array} The row that was deleted
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5100
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5101
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5102
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5103
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5104
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5105
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5106
		 *      // Immediately remove the first row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5107
		 *      oTable.fnDeleteRow( 0 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5108
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5109
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5110
		this.fnDeleteRow = function( mTarget, fnCallBack, bRedraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5111
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5112
			/* Find settings from table node */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5113
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5114
			var i, iLen, iAODataIndex;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5115
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5116
			iAODataIndex = (typeof mTarget === 'object') ? 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5117
				_fnNodeToDataIndex(oSettings, mTarget) : mTarget;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5118
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5119
			/* Return the data array from this row */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5120
			var oData = oSettings.aoData.splice( iAODataIndex, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5121
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5122
			/* Update the _DT_RowIndex parameter */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5123
			for ( i=0, iLen=oSettings.aoData.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5124
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5125
				if ( oSettings.aoData[i].nTr !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5126
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5127
					oSettings.aoData[i].nTr._DT_RowIndex = i;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5128
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5129
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5130
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5131
			/* Remove the target row from the search array */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5132
			var iDisplayIndex = $.inArray( iAODataIndex, oSettings.aiDisplay );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5133
			oSettings.asDataSearch.splice( iDisplayIndex, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5134
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5135
			/* Delete from the display arrays */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5136
			_fnDeleteIndex( oSettings.aiDisplayMaster, iAODataIndex );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5137
			_fnDeleteIndex( oSettings.aiDisplay, iAODataIndex );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5138
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5139
			/* If there is a user callback function - call it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5140
			if ( typeof fnCallBack === "function" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5141
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5142
				fnCallBack.call( this, oSettings, oData );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5143
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5144
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5145
			/* Check for an 'overflow' they case for dislaying the table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5146
			if ( oSettings._iDisplayStart >= oSettings.aiDisplay.length )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5147
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5148
				oSettings._iDisplayStart -= oSettings._iDisplayLength;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5149
				if ( oSettings._iDisplayStart < 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5150
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5151
					oSettings._iDisplayStart = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5152
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5153
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5154
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5155
			if ( bRedraw === undefined || bRedraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5156
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5157
				_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5158
				_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5159
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5160
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5161
			return oData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5162
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5163
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5164
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5165
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5166
		 * Restore the table to it's original state in the DOM by removing all of DataTables 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5167
		 * enhancements, alterations to the DOM structure of the table and event listeners.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5168
		 *  @param {boolean} [bRemove=false] Completely remove the table from the DOM
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5169
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5170
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5171
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5172
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5173
		 *      // This example is fairly pointless in reality, but shows how fnDestroy can be used
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5174
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5175
		 *      oTable.fnDestroy();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5176
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5177
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5178
		this.fnDestroy = function ( bRemove )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5179
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5180
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5181
			var nOrig = oSettings.nTableWrapper.parentNode;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5182
			var nBody = oSettings.nTBody;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5183
			var i, iLen;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5184
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5185
			bRemove = (bRemove===undefined) ? false : true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5186
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5187
			/* Flag to note that the table is currently being destroyed - no action should be taken */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5188
			oSettings.bDestroying = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5189
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5190
			/* Restore hidden columns */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5191
			for ( i=0, iLen=oSettings.aoDestroyCallback.length ; i<iLen ; i++ ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5192
				oSettings.aoDestroyCallback[i].fn();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5193
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5194
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5195
			/* Restore hidden columns */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5196
			for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5197
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5198
				if ( oSettings.aoColumns[i].bVisible === false )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5199
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5200
					this.fnSetColumnVis( i, true );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5201
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5202
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5203
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5204
			/* Blitz all DT events */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5205
			$(oSettings.nTableWrapper).find('*').andSelf().unbind('.DT');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5206
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5207
			/* If there is an 'empty' indicator row, remove it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5208
			$('tbody>tr>td.'+oSettings.oClasses.sRowEmpty, oSettings.nTable).parent().remove();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5209
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5210
			/* When scrolling we had to break the table up - restore it */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5211
			if ( oSettings.nTable != oSettings.nTHead.parentNode )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5212
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5213
				$(oSettings.nTable).children('thead').remove();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5214
				oSettings.nTable.appendChild( oSettings.nTHead );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5215
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5216
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5217
			if ( oSettings.nTFoot && oSettings.nTable != oSettings.nTFoot.parentNode )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5218
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5219
				$(oSettings.nTable).children('tfoot').remove();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5220
				oSettings.nTable.appendChild( oSettings.nTFoot );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5221
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5222
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5223
			/* Remove the DataTables generated nodes, events and classes */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5224
			oSettings.nTable.parentNode.removeChild( oSettings.nTable );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5225
			$(oSettings.nTableWrapper).remove();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5226
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5227
			oSettings.aaSorting = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5228
			oSettings.aaSortingFixed = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5229
			_fnSortingClasses( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5230
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5231
			$(_fnGetTrNodes( oSettings )).removeClass( oSettings.asStripeClasses.join(' ') );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5232
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5233
			$('th, td', oSettings.nTHead).removeClass( [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5234
				oSettings.oClasses.sSortable,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5235
				oSettings.oClasses.sSortableAsc,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5236
				oSettings.oClasses.sSortableDesc,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5237
				oSettings.oClasses.sSortableNone ].join(' ')
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5238
			);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5239
			if ( oSettings.bJUI )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5240
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5241
				$('th span.'+oSettings.oClasses.sSortIcon
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5242
					+ ', td span.'+oSettings.oClasses.sSortIcon, oSettings.nTHead).remove();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5243
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5244
				$('th, td', oSettings.nTHead).each( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5245
					var jqWrapper = $('div.'+oSettings.oClasses.sSortJUIWrapper, this);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5246
					var kids = jqWrapper.contents();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5247
					$(this).append( kids );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5248
					jqWrapper.remove();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5249
				} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5250
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5251
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5252
			/* Add the TR elements back into the table in their original order */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5253
			if ( !bRemove && oSettings.nTableReinsertBefore )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5254
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5255
				nOrig.insertBefore( oSettings.nTable, oSettings.nTableReinsertBefore );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5256
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5257
			else if ( !bRemove )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5258
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5259
				nOrig.appendChild( oSettings.nTable );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5260
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5261
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5262
			for ( i=0, iLen=oSettings.aoData.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5263
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5264
				if ( oSettings.aoData[i].nTr !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5265
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5266
					nBody.appendChild( oSettings.aoData[i].nTr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5267
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5268
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5269
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5270
			/* Restore the width of the original table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5271
			if ( oSettings.oFeatures.bAutoWidth === true )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5272
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5273
			  oSettings.nTable.style.width = _fnStringToCss(oSettings.sDestroyWidth);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5274
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5275
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5276
			/* If the were originally odd/even type classes - then we add them back here. Note
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5277
			 * this is not fool proof (for example if not all rows as odd/even classes - but 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5278
			 * it's a good effort without getting carried away
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5279
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5280
			$(nBody).children('tr:even').addClass( oSettings.asDestroyStripes[0] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5281
			$(nBody).children('tr:odd').addClass( oSettings.asDestroyStripes[1] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5282
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5283
			/* Remove the settings object from the settings array */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5284
			for ( i=0, iLen=DataTable.settings.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5285
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5286
				if ( DataTable.settings[i] == oSettings )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5287
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5288
					DataTable.settings.splice( i, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5289
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5290
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5291
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5292
			/* End it all */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5293
			oSettings = null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5294
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5295
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5296
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5297
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5298
		 * Redraw the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5299
		 *  @param {bool} [bComplete=true] Re-filter and resort (if enabled) the table before the draw.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5300
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5301
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5302
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5303
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5304
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5305
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5306
		 *      // Re-draw the table - you wouldn't want to do it here, but it's an example :-)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5307
		 *      oTable.fnDraw();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5308
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5309
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5310
		this.fnDraw = function( bComplete )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5311
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5312
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5313
			if ( bComplete )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5314
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5315
				_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5316
				_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5317
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5318
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5319
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5320
				_fnReDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5321
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5322
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5323
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5324
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5325
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5326
		 * Filter the input based on data
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5327
		 *  @param {string} sInput String to filter the table on
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5328
		 *  @param {int|null} [iColumn] Column to limit filtering to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5329
		 *  @param {bool} [bRegex=false] Treat as regular expression or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5330
		 *  @param {bool} [bSmart=true] Perform smart filtering or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5331
		 *  @param {bool} [bShowGlobal=true] Show the input global filter in it's input box(es)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5332
		 *  @param {bool} [bCaseInsensitive=true] Do case-insensitive matching (true) or not (false)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5333
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5334
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5335
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5336
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5337
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5338
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5339
		 *      // Sometime later - filter...
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5340
		 *      oTable.fnFilter( 'test string' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5341
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5342
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5343
		this.fnFilter = function( sInput, iColumn, bRegex, bSmart, bShowGlobal, bCaseInsensitive )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5344
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5345
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5346
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5347
			if ( !oSettings.oFeatures.bFilter )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5348
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5349
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5350
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5351
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5352
			if ( bRegex === undefined || bRegex === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5353
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5354
				bRegex = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5355
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5356
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5357
			if ( bSmart === undefined || bSmart === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5358
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5359
				bSmart = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5360
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5361
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5362
			if ( bShowGlobal === undefined || bShowGlobal === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5363
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5364
				bShowGlobal = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5365
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5366
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5367
			if ( bCaseInsensitive === undefined || bCaseInsensitive === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5368
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5369
				bCaseInsensitive = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5370
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5371
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5372
			if ( iColumn === undefined || iColumn === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5373
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5374
				/* Global filter */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5375
				_fnFilterComplete( oSettings, {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5376
					"sSearch":sInput+"",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5377
					"bRegex": bRegex,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5378
					"bSmart": bSmart,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5379
					"bCaseInsensitive": bCaseInsensitive
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5380
				}, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5381
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5382
				if ( bShowGlobal && oSettings.aanFeatures.f )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5383
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5384
					var n = oSettings.aanFeatures.f;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5385
					for ( var i=0, iLen=n.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5386
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5387
						$('input', n[i]).val( sInput );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5388
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5389
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5390
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5391
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5392
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5393
				/* Single column filter */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5394
				$.extend( oSettings.aoPreSearchCols[ iColumn ], {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5395
					"sSearch": sInput+"",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5396
					"bRegex": bRegex,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5397
					"bSmart": bSmart,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5398
					"bCaseInsensitive": bCaseInsensitive
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5399
				} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5400
				_fnFilterComplete( oSettings, oSettings.oPreviousSearch, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5401
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5402
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5403
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5404
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5405
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5406
		 * Get the data for the whole table, an individual row or an individual cell based on the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5407
		 * provided parameters.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5408
		 *  @param {int|node} [mRow] A TR row node, TD/TH cell node or an integer. If given as
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5409
		 *    a TR node then the data source for the whole row will be returned. If given as a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5410
		 *    TD/TH cell node then iCol will be automatically calculated and the data for the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5411
		 *    cell returned. If given as an integer, then this is treated as the aoData internal
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5412
		 *    data index for the row (see fnGetPosition) and the data for that row used.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5413
		 *  @param {int} [iCol] Optional column index that you want the data of.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5414
		 *  @returns {array|object|string} If mRow is undefined, then the data for all rows is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5415
		 *    returned. If mRow is defined, just data for that row, and is iCol is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5416
		 *    defined, only data for the designated cell is returned.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5417
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5418
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5419
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5420
		 *    // Row data
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5421
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5422
		 *      oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5423
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5424
		 *      oTable.$('tr').click( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5425
		 *        var data = oTable.fnGetData( this );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5426
		 *        // ... do something with the array / object of data for the row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5427
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5428
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5429
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5430
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5431
		 *    // Individual cell data
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5432
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5433
		 *      oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5434
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5435
		 *      oTable.$('td').click( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5436
		 *        var sData = oTable.fnGetData( this );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5437
		 *        alert( 'The cell clicked on had the value of '+sData );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5438
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5439
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5440
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5441
		this.fnGetData = function( mRow, iCol )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5442
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5443
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5444
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5445
			if ( mRow !== undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5446
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5447
				var iRow = mRow;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5448
				if ( typeof mRow === 'object' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5449
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5450
					var sNode = mRow.nodeName.toLowerCase();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5451
					if (sNode === "tr" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5452
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5453
						iRow = _fnNodeToDataIndex(oSettings, mRow);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5454
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5455
					else if ( sNode === "td" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5456
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5457
						iRow = _fnNodeToDataIndex(oSettings, mRow.parentNode);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5458
						iCol = _fnNodeToColumnIndex( oSettings, iRow, mRow );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5459
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5460
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5461
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5462
				if ( iCol !== undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5463
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5464
					return _fnGetCellData( oSettings, iRow, iCol, '' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5465
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5466
				return (oSettings.aoData[iRow]!==undefined) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5467
					oSettings.aoData[iRow]._aData : null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5468
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5469
			return _fnGetDataMaster( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5470
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5471
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5472
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5473
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5474
		 * Get an array of the TR nodes that are used in the table's body. Note that you will 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5475
		 * typically want to use the '$' API method in preference to this as it is more 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5476
		 * flexible.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5477
		 *  @param {int} [iRow] Optional row index for the TR element you want
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5478
		 *  @returns {array|node} If iRow is undefined, returns an array of all TR elements
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5479
		 *    in the table's body, or iRow is defined, just the TR element requested.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5480
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5481
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5482
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5483
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5484
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5485
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5486
		 *      // Get the nodes from the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5487
		 *      var nNodes = oTable.fnGetNodes( );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5488
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5489
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5490
		this.fnGetNodes = function( iRow )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5491
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5492
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5493
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5494
			if ( iRow !== undefined ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5495
				return (oSettings.aoData[iRow]!==undefined) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5496
					oSettings.aoData[iRow].nTr : null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5497
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5498
			return _fnGetTrNodes( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5499
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5500
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5501
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5502
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5503
		 * Get the array indexes of a particular cell from it's DOM element
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5504
		 * and column index including hidden columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5505
		 *  @param {node} nNode this can either be a TR, TD or TH in the table's body
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5506
		 *  @returns {int} If nNode is given as a TR, then a single index is returned, or
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5507
		 *    if given as a cell, an array of [row index, column index (visible)] is given.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5508
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5509
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5510
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5511
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5512
		 *      $('#example tbody td').click( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5513
		 *        // Get the position of the current data from the node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5514
		 *        var aPos = oTable.fnGetPosition( this );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5515
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5516
		 *        // Get the data array for this row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5517
		 *        var aData = oTable.fnGetData( aPos[0] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5518
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5519
		 *        // Update the data array and return the value
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5520
		 *        aData[ aPos[1] ] = 'clicked';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5521
		 *        this.innerHTML = 'clicked';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5522
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5523
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5524
		 *      // Init DataTables
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5525
		 *      oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5526
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5527
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5528
		this.fnGetPosition = function( nNode )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5529
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5530
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5531
			var sNodeName = nNode.nodeName.toUpperCase();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5532
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5533
			if ( sNodeName == "TR" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5534
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5535
				return _fnNodeToDataIndex(oSettings, nNode);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5536
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5537
			else if ( sNodeName == "TD" || sNodeName == "TH" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5538
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5539
				var iDataIndex = _fnNodeToDataIndex( oSettings, nNode.parentNode );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5540
				var iColumnIndex = _fnNodeToColumnIndex( oSettings, iDataIndex, nNode );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5541
				return [ iDataIndex, _fnColumnIndexToVisible(oSettings, iColumnIndex ), iColumnIndex ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5542
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5543
			return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5544
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5545
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5546
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5547
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5548
		 * Check to see if a row is 'open' or not.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5549
		 *  @param {node} nTr the table row to check
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5550
		 *  @returns {boolean} true if the row is currently open, false otherwise
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5551
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5552
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5553
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5554
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5555
		 *      var oTable;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5556
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5557
		 *      // 'open' an information row when a row is clicked on
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5558
		 *      $('#example tbody tr').click( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5559
		 *        if ( oTable.fnIsOpen(this) ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5560
		 *          oTable.fnClose( this );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5561
		 *        } else {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5562
		 *          oTable.fnOpen( this, "Temporary row opened", "info_row" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5563
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5564
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5565
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5566
		 *      oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5567
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5568
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5569
		this.fnIsOpen = function( nTr )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5570
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5571
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5572
			var aoOpenRows = oSettings.aoOpenRows;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5573
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5574
			for ( var i=0 ; i<oSettings.aoOpenRows.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5575
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5576
				if ( oSettings.aoOpenRows[i].nParent == nTr )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5577
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5578
					return true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5579
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5580
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5581
			return false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5582
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5583
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5584
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5585
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5586
		 * This function will place a new row directly after a row which is currently 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5587
		 * on display on the page, with the HTML contents that is passed into the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5588
		 * function. This can be used, for example, to ask for confirmation that a 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5589
		 * particular record should be deleted.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5590
		 *  @param {node} nTr The table row to 'open'
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5591
		 *  @param {string|node|jQuery} mHtml The HTML to put into the row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5592
		 *  @param {string} sClass Class to give the new TD cell
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5593
		 *  @returns {node} The row opened. Note that if the table row passed in as the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5594
		 *    first parameter, is not found in the table, this method will silently
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5595
		 *    return.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5596
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5597
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5598
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5599
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5600
		 *      var oTable;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5601
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5602
		 *      // 'open' an information row when a row is clicked on
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5603
		 *      $('#example tbody tr').click( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5604
		 *        if ( oTable.fnIsOpen(this) ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5605
		 *          oTable.fnClose( this );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5606
		 *        } else {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5607
		 *          oTable.fnOpen( this, "Temporary row opened", "info_row" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5608
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5609
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5610
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5611
		 *      oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5612
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5613
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5614
		this.fnOpen = function( nTr, mHtml, sClass )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5615
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5616
			/* Find settings from table node */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5617
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5618
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5619
			/* Check that the row given is in the table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5620
			var nTableRows = _fnGetTrNodes( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5621
			if ( $.inArray(nTr, nTableRows) === -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5622
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5623
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5624
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5625
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5626
			/* the old open one if there is one */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5627
			this.fnClose( nTr );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5628
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5629
			var nNewRow = document.createElement("tr");
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5630
			var nNewCell = document.createElement("td");
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5631
			nNewRow.appendChild( nNewCell );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5632
			nNewCell.className = sClass;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5633
			nNewCell.colSpan = _fnVisbleColumns( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5634
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5635
			if (typeof mHtml === "string")
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5636
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5637
				nNewCell.innerHTML = mHtml;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5638
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5639
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5640
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5641
				$(nNewCell).html( mHtml );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5642
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5643
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5644
			/* If the nTr isn't on the page at the moment - then we don't insert at the moment */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5645
			var nTrs = $('tr', oSettings.nTBody);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5646
			if ( $.inArray(nTr, nTrs) != -1  )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5647
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5648
				$(nNewRow).insertAfter(nTr);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5649
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5650
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5651
			oSettings.aoOpenRows.push( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5652
				"nTr": nNewRow,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5653
				"nParent": nTr
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5654
			} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5655
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5656
			return nNewRow;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5657
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5658
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5659
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5660
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5661
		 * Change the pagination - provides the internal logic for pagination in a simple API 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5662
		 * function. With this function you can have a DataTables table go to the next, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5663
		 * previous, first or last pages.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5664
		 *  @param {string|int} mAction Paging action to take: "first", "previous", "next" or "last"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5665
		 *    or page number to jump to (integer), note that page 0 is the first page.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5666
		 *  @param {bool} [bRedraw=true] Redraw the table or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5667
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5668
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5669
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5670
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5671
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5672
		 *      oTable.fnPageChange( 'next' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5673
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5674
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5675
		this.fnPageChange = function ( mAction, bRedraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5676
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5677
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5678
			_fnPageChange( oSettings, mAction );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5679
			_fnCalculateEnd( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5680
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5681
			if ( bRedraw === undefined || bRedraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5682
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5683
				_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5684
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5685
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5686
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5687
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5688
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5689
		 * Show a particular column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5690
		 *  @param {int} iCol The column whose display should be changed
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5691
		 *  @param {bool} bShow Show (true) or hide (false) the column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5692
		 *  @param {bool} [bRedraw=true] Redraw the table or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5693
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5694
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5695
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5696
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5697
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5698
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5699
		 *      // Hide the second column after initialisation
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5700
		 *      oTable.fnSetColumnVis( 1, false );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5701
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5702
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5703
		this.fnSetColumnVis = function ( iCol, bShow, bRedraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5704
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5705
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5706
			var i, iLen;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5707
			var aoColumns = oSettings.aoColumns;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5708
			var aoData = oSettings.aoData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5709
			var nTd, nCell, anTrs, jqChildren, bAppend, iBefore;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5710
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5711
			/* No point in doing anything if we are requesting what is already true */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5712
			if ( aoColumns[iCol].bVisible == bShow )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5713
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5714
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5715
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5716
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5717
			/* Show the column */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5718
			if ( bShow )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5719
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5720
				var iInsert = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5721
				for ( i=0 ; i<iCol ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5722
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5723
					if ( aoColumns[i].bVisible )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5724
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5725
						iInsert++;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5726
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5727
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5728
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5729
				/* Need to decide if we should use appendChild or insertBefore */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5730
				bAppend = (iInsert >= _fnVisbleColumns( oSettings ));
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5731
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5732
				/* Which coloumn should we be inserting before? */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5733
				if ( !bAppend )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5734
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5735
					for ( i=iCol ; i<aoColumns.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5736
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5737
						if ( aoColumns[i].bVisible )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5738
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5739
							iBefore = i;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5740
							break;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5741
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5742
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5743
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5744
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5745
				for ( i=0, iLen=aoData.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5746
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5747
					if ( aoData[i].nTr !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5748
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5749
						if ( bAppend )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5750
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5751
							aoData[i].nTr.appendChild( 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5752
								aoData[i]._anHidden[iCol]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5753
							);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5754
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5755
						else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5756
						{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5757
							aoData[i].nTr.insertBefore(
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5758
								aoData[i]._anHidden[iCol], 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5759
								_fnGetTdNodes( oSettings, i )[iBefore] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5760
						}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5761
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5762
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5763
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5764
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5765
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5766
				/* Remove a column from display */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5767
				for ( i=0, iLen=aoData.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5768
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5769
					if ( aoData[i].nTr !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5770
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5771
						nTd = _fnGetTdNodes( oSettings, i )[iCol];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5772
						aoData[i]._anHidden[iCol] = nTd;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5773
						nTd.parentNode.removeChild( nTd );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5774
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5775
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5776
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5777
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5778
			/* Clear to set the visible flag */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5779
			aoColumns[iCol].bVisible = bShow;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5780
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5781
			/* Redraw the header and footer based on the new column visibility */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5782
			_fnDrawHead( oSettings, oSettings.aoHeader );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5783
			if ( oSettings.nTFoot )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5784
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5785
				_fnDrawHead( oSettings, oSettings.aoFooter );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5786
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5787
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5788
			/* If there are any 'open' rows, then we need to alter the colspan for this col change */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5789
			for ( i=0, iLen=oSettings.aoOpenRows.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5790
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5791
				oSettings.aoOpenRows[i].nTr.colSpan = _fnVisbleColumns( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5792
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5793
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5794
			/* Do a redraw incase anything depending on the table columns needs it 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5795
			 * (built-in: scrolling) 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5796
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5797
			if ( bRedraw === undefined || bRedraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5798
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5799
				_fnAdjustColumnSizing( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5800
				_fnDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5801
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5802
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5803
			_fnSaveState( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5804
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5805
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5806
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5807
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5808
		 * Get the settings for a particular table for external manipulation
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5809
		 *  @returns {object} DataTables settings object. See 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5810
		 *    {@link DataTable.models.oSettings}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5811
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5812
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5813
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5814
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5815
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5816
		 *      var oSettings = oTable.fnSettings();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5817
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5818
		 *      // Show an example parameter from the settings
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5819
		 *      alert( oSettings._iDisplayStart );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5820
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5821
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5822
		this.fnSettings = function()
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5823
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5824
			return _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5825
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5826
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5827
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5828
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5829
		 * Sort the table by a particular row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5830
		 *  @param {int} iCol the data index to sort on. Note that this will not match the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5831
		 *    'display index' if you have hidden data entries
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5832
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5833
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5834
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5835
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5836
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5837
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5838
		 *      // Sort immediately with columns 0 and 1
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5839
		 *      oTable.fnSort( [ [0,'asc'], [1,'asc'] ] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5840
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5841
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5842
		this.fnSort = function( aaSort )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5843
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5844
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5845
			oSettings.aaSorting = aaSort;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5846
			_fnSort( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5847
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5848
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5849
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5850
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5851
		 * Attach a sort listener to an element for a given column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5852
		 *  @param {node} nNode the element to attach the sort listener to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5853
		 *  @param {int} iColumn the column that a click on this node will sort on
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5854
		 *  @param {function} [fnCallback] callback function when sort is run
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5855
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5856
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5857
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5858
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5859
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5860
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5861
		 *      // Sort on column 1, when 'sorter' is clicked on
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5862
		 *      oTable.fnSortListener( document.getElementById('sorter'), 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5863
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5864
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5865
		this.fnSortListener = function( nNode, iColumn, fnCallback )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5866
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5867
			_fnSortAttachListener( _fnSettingsFromNode( this[DataTable.ext.iApiIndex] ), nNode, iColumn,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5868
			 	fnCallback );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5869
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5870
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5871
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5872
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5873
		 * Update a table cell or row - this method will accept either a single value to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5874
		 * update the cell with, an array of values with one element for each column or
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5875
		 * an object in the same format as the original data source. The function is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5876
		 * self-referencing in order to make the multi column updates easier.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5877
		 *  @param {object|array|string} mData Data to update the cell/row with
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5878
		 *  @param {node|int} mRow TR element you want to update or the aoData index
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5879
		 *  @param {int} [iColumn] The column to update (not used of mData is an array or object)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5880
		 *  @param {bool} [bRedraw=true] Redraw the table or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5881
		 *  @param {bool} [bAction=true] Perform predraw actions or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5882
		 *  @returns {int} 0 on success, 1 on error
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5883
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5884
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5885
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5886
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5887
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5888
		 *      oTable.fnUpdate( 'Example update', 0, 0 ); // Single cell
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5889
		 *      oTable.fnUpdate( ['a', 'b', 'c', 'd', 'e'], 1, 0 ); // Row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5890
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5891
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5892
		this.fnUpdate = function( mData, mRow, iColumn, bRedraw, bAction )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5893
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5894
			var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5895
			var iVisibleColumn, i, iLen, sDisplay;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5896
			var iRow = (typeof mRow === 'object') ? 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5897
				_fnNodeToDataIndex(oSettings, mRow) : mRow;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5898
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5899
			if ( oSettings.__fnUpdateDeep === undefined && $.isArray(mData) && typeof mData === 'object' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5900
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5901
				/* Array update - update the whole row */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5902
				oSettings.aoData[iRow]._aData = mData.slice();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5903
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5904
				/* Flag to the function that we are recursing */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5905
				oSettings.__fnUpdateDeep = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5906
				for ( i=0 ; i<oSettings.aoColumns.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5907
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5908
					this.fnUpdate( _fnGetCellData( oSettings, iRow, i ), iRow, i, false, false );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5909
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5910
				oSettings.__fnUpdateDeep = undefined;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5911
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5912
			else if ( oSettings.__fnUpdateDeep === undefined && mData !== null && typeof mData === 'object' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5913
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5914
				/* Object update - update the whole row - assume the developer gets the object right */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5915
				oSettings.aoData[iRow]._aData = $.extend( true, {}, mData );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5916
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5917
				oSettings.__fnUpdateDeep = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5918
				for ( i=0 ; i<oSettings.aoColumns.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5919
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5920
					this.fnUpdate( _fnGetCellData( oSettings, iRow, i ), iRow, i, false, false );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5921
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5922
				oSettings.__fnUpdateDeep = undefined;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5923
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5924
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5925
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5926
				/* Individual cell update */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5927
				_fnSetCellData( oSettings, iRow, iColumn, mData );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5928
				sDisplay = _fnGetCellData( oSettings, iRow, iColumn, 'display' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5929
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5930
				var oCol = oSettings.aoColumns[iColumn];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5931
				if ( oCol.fnRender !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5932
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5933
					sDisplay = _fnRender( oSettings, iRow, iColumn );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5934
					if ( oCol.bUseRendered )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5935
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5936
						_fnSetCellData( oSettings, iRow, iColumn, sDisplay );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5937
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5938
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5939
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5940
				if ( oSettings.aoData[iRow].nTr !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5941
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5942
					/* Do the actual HTML update */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5943
					_fnGetTdNodes( oSettings, iRow )[iColumn].innerHTML = sDisplay;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5944
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5945
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5946
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5947
			/* Modify the search index for this row (strictly this is likely not needed, since fnReDraw
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5948
			 * will rebuild the search array - however, the redraw might be disabled by the user)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5949
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5950
			var iDisplayIndex = $.inArray( iRow, oSettings.aiDisplay );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5951
			oSettings.asDataSearch[iDisplayIndex] = _fnBuildSearchRow( oSettings, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5952
				_fnGetRowData( oSettings, iRow, 'filter' ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5953
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5954
			/* Perform pre-draw actions */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5955
			if ( bAction === undefined || bAction )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5956
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5957
				_fnAdjustColumnSizing( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5958
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5959
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5960
			/* Redraw the table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5961
			if ( bRedraw === undefined || bRedraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5962
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5963
				_fnReDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5964
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5965
			return 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5966
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5967
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5968
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5969
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5970
		 * Provide a common method for plug-ins to check the version of DataTables being used, in order
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5971
		 * to ensure compatibility.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5972
		 *  @param {string} sVersion Version string to check for, in the format "X.Y.Z". Note that the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5973
		 *    formats "X" and "X.Y" are also acceptable.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5974
		 *  @returns {boolean} true if this version of DataTables is greater or equal to the required
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5975
		 *    version, or false if this version of DataTales is not suitable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5976
		 *  @method
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5977
		 *  @dtopt API
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5978
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5979
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5980
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5981
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5982
		 *      alert( oTable.fnVersionCheck( '1.9.0' ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5983
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5984
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5985
		this.fnVersionCheck = DataTable.ext.fnVersionCheck;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5986
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5987
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5988
		/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5989
		 * This is really a good bit rubbish this method of exposing the internal methods
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5990
		 * publically... - To be fixed in 2.0 using methods on the prototype
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5991
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5992
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5993
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5994
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5995
		 * Create a wrapper function for exporting an internal functions to an external API.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5996
		 *  @param {string} sFunc API function name
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5997
		 *  @returns {function} wrapped function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5998
		 *  @memberof DataTable#oApi
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  5999
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6000
		function _fnExternApiFunc (sFunc)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6001
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6002
			return function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6003
				var aArgs = [_fnSettingsFromNode(this[DataTable.ext.iApiIndex])].concat( 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6004
					Array.prototype.slice.call(arguments) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6005
				return DataTable.ext.oApi[sFunc].apply( this, aArgs );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6006
			};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6007
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6008
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6009
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6010
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6011
		 * Reference to internal functions for use by plug-in developers. Note that these
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6012
		 * methods are references to internal functions and are considered to be private.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6013
		 * If you use these methods, be aware that they are liable to change between versions
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6014
		 * (check the upgrade notes).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6015
		 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6016
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6017
		this.oApi = {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6018
			"_fnExternApiFunc": _fnExternApiFunc,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6019
			"_fnInitialise": _fnInitialise,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6020
			"_fnInitComplete": _fnInitComplete,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6021
			"_fnLanguageCompat": _fnLanguageCompat,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6022
			"_fnAddColumn": _fnAddColumn,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6023
			"_fnColumnOptions": _fnColumnOptions,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6024
			"_fnAddData": _fnAddData,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6025
			"_fnCreateTr": _fnCreateTr,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6026
			"_fnGatherData": _fnGatherData,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6027
			"_fnBuildHead": _fnBuildHead,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6028
			"_fnDrawHead": _fnDrawHead,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6029
			"_fnDraw": _fnDraw,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6030
			"_fnReDraw": _fnReDraw,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6031
			"_fnAjaxUpdate": _fnAjaxUpdate,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6032
			"_fnAjaxParameters": _fnAjaxParameters,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6033
			"_fnAjaxUpdateDraw": _fnAjaxUpdateDraw,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6034
			"_fnServerParams": _fnServerParams,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6035
			"_fnAddOptionsHtml": _fnAddOptionsHtml,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6036
			"_fnFeatureHtmlTable": _fnFeatureHtmlTable,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6037
			"_fnScrollDraw": _fnScrollDraw,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6038
			"_fnAdjustColumnSizing": _fnAdjustColumnSizing,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6039
			"_fnFeatureHtmlFilter": _fnFeatureHtmlFilter,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6040
			"_fnFilterComplete": _fnFilterComplete,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6041
			"_fnFilterCustom": _fnFilterCustom,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6042
			"_fnFilterColumn": _fnFilterColumn,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6043
			"_fnFilter": _fnFilter,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6044
			"_fnBuildSearchArray": _fnBuildSearchArray,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6045
			"_fnBuildSearchRow": _fnBuildSearchRow,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6046
			"_fnFilterCreateSearch": _fnFilterCreateSearch,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6047
			"_fnDataToSearch": _fnDataToSearch,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6048
			"_fnSort": _fnSort,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6049
			"_fnSortAttachListener": _fnSortAttachListener,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6050
			"_fnSortingClasses": _fnSortingClasses,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6051
			"_fnFeatureHtmlPaginate": _fnFeatureHtmlPaginate,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6052
			"_fnPageChange": _fnPageChange,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6053
			"_fnFeatureHtmlInfo": _fnFeatureHtmlInfo,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6054
			"_fnUpdateInfo": _fnUpdateInfo,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6055
			"_fnFeatureHtmlLength": _fnFeatureHtmlLength,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6056
			"_fnFeatureHtmlProcessing": _fnFeatureHtmlProcessing,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6057
			"_fnProcessingDisplay": _fnProcessingDisplay,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6058
			"_fnVisibleToColumnIndex": _fnVisibleToColumnIndex,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6059
			"_fnColumnIndexToVisible": _fnColumnIndexToVisible,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6060
			"_fnNodeToDataIndex": _fnNodeToDataIndex,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6061
			"_fnVisbleColumns": _fnVisbleColumns,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6062
			"_fnCalculateEnd": _fnCalculateEnd,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6063
			"_fnConvertToWidth": _fnConvertToWidth,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6064
			"_fnCalculateColumnWidths": _fnCalculateColumnWidths,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6065
			"_fnScrollingWidthAdjust": _fnScrollingWidthAdjust,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6066
			"_fnGetWidestNode": _fnGetWidestNode,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6067
			"_fnGetMaxLenString": _fnGetMaxLenString,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6068
			"_fnStringToCss": _fnStringToCss,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6069
			"_fnDetectType": _fnDetectType,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6070
			"_fnSettingsFromNode": _fnSettingsFromNode,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6071
			"_fnGetDataMaster": _fnGetDataMaster,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6072
			"_fnGetTrNodes": _fnGetTrNodes,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6073
			"_fnGetTdNodes": _fnGetTdNodes,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6074
			"_fnEscapeRegex": _fnEscapeRegex,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6075
			"_fnDeleteIndex": _fnDeleteIndex,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6076
			"_fnReOrderIndex": _fnReOrderIndex,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6077
			"_fnColumnOrdering": _fnColumnOrdering,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6078
			"_fnLog": _fnLog,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6079
			"_fnClearTable": _fnClearTable,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6080
			"_fnSaveState": _fnSaveState,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6081
			"_fnLoadState": _fnLoadState,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6082
			"_fnCreateCookie": _fnCreateCookie,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6083
			"_fnReadCookie": _fnReadCookie,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6084
			"_fnDetectHeader": _fnDetectHeader,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6085
			"_fnGetUniqueThs": _fnGetUniqueThs,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6086
			"_fnScrollBarWidth": _fnScrollBarWidth,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6087
			"_fnApplyToChildren": _fnApplyToChildren,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6088
			"_fnMap": _fnMap,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6089
			"_fnGetRowData": _fnGetRowData,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6090
			"_fnGetCellData": _fnGetCellData,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6091
			"_fnSetCellData": _fnSetCellData,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6092
			"_fnGetObjectDataFn": _fnGetObjectDataFn,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6093
			"_fnSetObjectDataFn": _fnSetObjectDataFn,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6094
			"_fnApplyColumnDefs": _fnApplyColumnDefs,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6095
			"_fnBindAction": _fnBindAction,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6096
			"_fnExtend": _fnExtend,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6097
			"_fnCallbackReg": _fnCallbackReg,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6098
			"_fnCallbackFire": _fnCallbackFire,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6099
			"_fnJsonString": _fnJsonString,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6100
			"_fnRender": _fnRender,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6101
			"_fnNodeToColumnIndex": _fnNodeToColumnIndex
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6102
		};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6103
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6104
		$.extend( DataTable.ext.oApi, this.oApi );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6105
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6106
		for ( var sFunc in DataTable.ext.oApi )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6107
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6108
			if ( sFunc )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6109
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6110
				this[sFunc] = _fnExternApiFunc(sFunc);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6111
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6112
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6113
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6114
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6115
		var _that = this;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6116
		return this.each(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6117
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6118
			var i=0, iLen, j, jLen, k, kLen;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6119
			var sId = this.getAttribute( 'id' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6120
			var bInitHandedOff = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6121
			var bUsePassedData = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6122
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6123
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6124
			/* Sanity check */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6125
			if ( this.nodeName.toLowerCase() != 'table' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6126
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6127
				_fnLog( null, 0, "Attempted to initialise DataTables on a node which is not a "+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6128
					"table: "+this.nodeName );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6129
				return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6130
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6131
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6132
			/* Check to see if we are re-initialising a table */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6133
			for ( i=0, iLen=DataTable.settings.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6134
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6135
				/* Base check on table node */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6136
				if ( DataTable.settings[i].nTable == this )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6137
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6138
					if ( oInit === undefined || oInit.bRetrieve )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6139
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6140
						return DataTable.settings[i].oInstance;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6141
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6142
					else if ( oInit.bDestroy )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6143
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6144
						DataTable.settings[i].oInstance.fnDestroy();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6145
						break;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6146
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6147
					else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6148
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6149
						_fnLog( DataTable.settings[i], 0, "Cannot reinitialise DataTable.\n\n"+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6150
							"To retrieve the DataTables object for this table, pass no arguments or see "+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6151
							"the docs for bRetrieve and bDestroy" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6152
						return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6153
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6154
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6155
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6156
				/* If the element we are initialising has the same ID as a table which was previously
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6157
				 * initialised, but the table nodes don't match (from before) then we destroy the old
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6158
				 * instance by simply deleting it. This is under the assumption that the table has been
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6159
				 * destroyed by other methods. Anyone using non-id selectors will need to do this manually
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6160
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6161
				if ( DataTable.settings[i].sTableId == this.id )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6162
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6163
					DataTable.settings.splice( i, 1 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6164
					break;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6165
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6166
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6167
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6168
			/* Ensure the table has an ID - required for accessibility */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6169
			if ( sId === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6170
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6171
				sId = "DataTables_Table_"+(DataTable.ext._oExternConfig.iNextUnique++);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6172
				this.id = sId;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6173
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6174
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6175
			/* Create the settings object for this table and set some of the default parameters */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6176
			var oSettings = $.extend( true, {}, DataTable.models.oSettings, {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6177
				"nTable":        this,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6178
				"oApi":          _that.oApi,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6179
				"oInit":         oInit,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6180
				"sDestroyWidth": $(this).width(),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6181
				"sInstance":     sId,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6182
				"sTableId":      sId
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6183
			} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6184
			DataTable.settings.push( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6185
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6186
			// Need to add the instance after the instance after the settings object has been added
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6187
			// to the settings array, so we can self reference the table instance if more than one
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6188
			oSettings.oInstance = (_that.length===1) ? _that : $(this).dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6189
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6190
			/* Setting up the initialisation object */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6191
			if ( !oInit )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6192
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6193
				oInit = {};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6194
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6195
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6196
			// Backwards compatibility, before we apply all the defaults
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6197
			if ( oInit.oLanguage )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6198
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6199
				_fnLanguageCompat( oInit.oLanguage );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6200
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6201
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6202
			oInit = _fnExtend( $.extend(true, {}, DataTable.defaults), oInit );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6203
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6204
			// Map the initialisation options onto the settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6205
			_fnMap( oSettings.oFeatures, oInit, "bPaginate" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6206
			_fnMap( oSettings.oFeatures, oInit, "bLengthChange" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6207
			_fnMap( oSettings.oFeatures, oInit, "bFilter" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6208
			_fnMap( oSettings.oFeatures, oInit, "bSort" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6209
			_fnMap( oSettings.oFeatures, oInit, "bInfo" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6210
			_fnMap( oSettings.oFeatures, oInit, "bProcessing" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6211
			_fnMap( oSettings.oFeatures, oInit, "bAutoWidth" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6212
			_fnMap( oSettings.oFeatures, oInit, "bSortClasses" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6213
			_fnMap( oSettings.oFeatures, oInit, "bServerSide" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6214
			_fnMap( oSettings.oFeatures, oInit, "bDeferRender" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6215
			_fnMap( oSettings.oScroll, oInit, "sScrollX", "sX" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6216
			_fnMap( oSettings.oScroll, oInit, "sScrollXInner", "sXInner" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6217
			_fnMap( oSettings.oScroll, oInit, "sScrollY", "sY" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6218
			_fnMap( oSettings.oScroll, oInit, "bScrollCollapse", "bCollapse" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6219
			_fnMap( oSettings.oScroll, oInit, "bScrollInfinite", "bInfinite" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6220
			_fnMap( oSettings.oScroll, oInit, "iScrollLoadGap", "iLoadGap" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6221
			_fnMap( oSettings.oScroll, oInit, "bScrollAutoCss", "bAutoCss" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6222
			_fnMap( oSettings, oInit, "asStripClasses", "asStripeClasses" ); // legacy
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6223
			_fnMap( oSettings, oInit, "asStripeClasses" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6224
			_fnMap( oSettings, oInit, "fnServerData" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6225
			_fnMap( oSettings, oInit, "fnFormatNumber" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6226
			_fnMap( oSettings, oInit, "sServerMethod" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6227
			_fnMap( oSettings, oInit, "aaSorting" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6228
			_fnMap( oSettings, oInit, "aaSortingFixed" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6229
			_fnMap( oSettings, oInit, "aLengthMenu" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6230
			_fnMap( oSettings, oInit, "sPaginationType" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6231
			_fnMap( oSettings, oInit, "sAjaxSource" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6232
			_fnMap( oSettings, oInit, "sAjaxDataProp" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6233
			_fnMap( oSettings, oInit, "iCookieDuration" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6234
			_fnMap( oSettings, oInit, "sCookiePrefix" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6235
			_fnMap( oSettings, oInit, "sDom" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6236
			_fnMap( oSettings, oInit, "bSortCellsTop" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6237
			_fnMap( oSettings, oInit, "iTabIndex" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6238
			_fnMap( oSettings, oInit, "oSearch", "oPreviousSearch" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6239
			_fnMap( oSettings, oInit, "aoSearchCols", "aoPreSearchCols" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6240
			_fnMap( oSettings, oInit, "iDisplayLength", "_iDisplayLength" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6241
			_fnMap( oSettings, oInit, "bJQueryUI", "bJUI" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6242
			_fnMap( oSettings, oInit, "fnCookieCallback" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6243
			_fnMap( oSettings, oInit, "fnStateLoad" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6244
			_fnMap( oSettings, oInit, "fnStateSave" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6245
			_fnMap( oSettings.oLanguage, oInit, "fnInfoCallback" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6246
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6247
			/* Callback functions which are array driven */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6248
			_fnCallbackReg( oSettings, 'aoDrawCallback',       oInit.fnDrawCallback,      'user' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6249
			_fnCallbackReg( oSettings, 'aoServerParams',       oInit.fnServerParams,      'user' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6250
			_fnCallbackReg( oSettings, 'aoStateSaveParams',    oInit.fnStateSaveParams,   'user' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6251
			_fnCallbackReg( oSettings, 'aoStateLoadParams',    oInit.fnStateLoadParams,   'user' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6252
			_fnCallbackReg( oSettings, 'aoStateLoaded',        oInit.fnStateLoaded,       'user' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6253
			_fnCallbackReg( oSettings, 'aoRowCallback',        oInit.fnRowCallback,       'user' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6254
			_fnCallbackReg( oSettings, 'aoRowCreatedCallback', oInit.fnCreatedRow,        'user' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6255
			_fnCallbackReg( oSettings, 'aoHeaderCallback',     oInit.fnHeaderCallback,    'user' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6256
			_fnCallbackReg( oSettings, 'aoFooterCallback',     oInit.fnFooterCallback,    'user' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6257
			_fnCallbackReg( oSettings, 'aoInitComplete',       oInit.fnInitComplete,      'user' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6258
			_fnCallbackReg( oSettings, 'aoPreDrawCallback',    oInit.fnPreDrawCallback,   'user' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6259
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6260
			if ( oSettings.oFeatures.bServerSide && oSettings.oFeatures.bSort &&
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6261
				   oSettings.oFeatures.bSortClasses )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6262
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6263
				/* Enable sort classes for server-side processing. Safe to do it here, since server-side
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6264
				 * processing must be enabled by the developer
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6265
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6266
				_fnCallbackReg( oSettings, 'aoDrawCallback', _fnSortingClasses, 'server_side_sort_classes' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6267
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6268
			else if ( oSettings.oFeatures.bDeferRender )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6269
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6270
				_fnCallbackReg( oSettings, 'aoDrawCallback', _fnSortingClasses, 'defer_sort_classes' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6271
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6272
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6273
			if ( oInit.bJQueryUI )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6274
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6275
				/* Use the JUI classes object for display. You could clone the oStdClasses object if 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6276
				 * you want to have multiple tables with multiple independent classes 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6277
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6278
				$.extend( oSettings.oClasses, DataTable.ext.oJUIClasses );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6279
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6280
				if ( oInit.sDom === DataTable.defaults.sDom && DataTable.defaults.sDom === "lfrtip" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6281
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6282
					/* Set the DOM to use a layout suitable for jQuery UI's theming */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6283
					oSettings.sDom = '<"H"lfr>t<"F"ip>';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6284
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6285
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6286
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6287
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6288
				$.extend( oSettings.oClasses, DataTable.ext.oStdClasses );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6289
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6290
			$(this).addClass( oSettings.oClasses.sTable );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6291
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6292
			/* Calculate the scroll bar width and cache it for use later on */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6293
			if ( oSettings.oScroll.sX !== "" || oSettings.oScroll.sY !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6294
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6295
				oSettings.oScroll.iBarWidth = _fnScrollBarWidth();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6296
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6297
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6298
			if ( oSettings.iInitDisplayStart === undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6299
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6300
				/* Display start point, taking into account the save saving */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6301
				oSettings.iInitDisplayStart = oInit.iDisplayStart;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6302
				oSettings._iDisplayStart = oInit.iDisplayStart;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6303
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6304
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6305
			/* Must be done after everything which can be overridden by a cookie! */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6306
			if ( oInit.bStateSave )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6307
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6308
				oSettings.oFeatures.bStateSave = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6309
				_fnLoadState( oSettings, oInit );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6310
				_fnCallbackReg( oSettings, 'aoDrawCallback', _fnSaveState, 'state_save' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6311
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6312
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6313
			if ( oInit.iDeferLoading !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6314
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6315
				oSettings.bDeferLoading = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6316
				oSettings._iRecordsTotal = oInit.iDeferLoading;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6317
				oSettings._iRecordsDisplay = oInit.iDeferLoading;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6318
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6319
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6320
			if ( oInit.aaData !== null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6321
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6322
				bUsePassedData = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6323
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6324
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6325
			/* Language definitions */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6326
			if ( oInit.oLanguage.sUrl !== "" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6327
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6328
				/* Get the language definitions from a file - because this Ajax call makes the language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6329
				 * get async to the remainder of this function we use bInitHandedOff to indicate that 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6330
				 * _fnInitialise will be fired by the returned Ajax handler, rather than the constructor
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6331
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6332
				oSettings.oLanguage.sUrl = oInit.oLanguage.sUrl;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6333
				$.getJSON( oSettings.oLanguage.sUrl, null, function( json ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6334
					_fnLanguageCompat( json );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6335
					$.extend( true, oSettings.oLanguage, oInit.oLanguage, json );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6336
					_fnInitialise( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6337
				} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6338
				bInitHandedOff = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6339
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6340
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6341
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6342
				$.extend( true, oSettings.oLanguage, oInit.oLanguage );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6343
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6344
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6345
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6346
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6347
			 * Stripes
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6348
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6349
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6350
			/* Remove row stripe classes if they are already on the table row */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6351
			var bStripeRemove = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6352
			var anRows = $(this).children('tbody').children('tr');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6353
			for ( i=0, iLen=oSettings.asStripeClasses.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6354
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6355
				if ( anRows.filter(":lt(2)").hasClass( oSettings.asStripeClasses[i]) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6356
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6357
					bStripeRemove = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6358
					break;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6359
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6360
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6361
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6362
			if ( bStripeRemove )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6363
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6364
				/* Store the classes which we are about to remove so they can be readded on destroy */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6365
				oSettings.asDestroyStripes = [ '', '' ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6366
				if ( $(anRows[0]).hasClass(oSettings.oClasses.sStripeOdd) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6367
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6368
					oSettings.asDestroyStripes[0] += oSettings.oClasses.sStripeOdd+" ";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6369
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6370
				if ( $(anRows[0]).hasClass(oSettings.oClasses.sStripeEven) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6371
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6372
					oSettings.asDestroyStripes[0] += oSettings.oClasses.sStripeEven;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6373
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6374
				if ( $(anRows[1]).hasClass(oSettings.oClasses.sStripeOdd) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6375
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6376
					oSettings.asDestroyStripes[1] += oSettings.oClasses.sStripeOdd+" ";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6377
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6378
				if ( $(anRows[1]).hasClass(oSettings.oClasses.sStripeEven) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6379
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6380
					oSettings.asDestroyStripes[1] += oSettings.oClasses.sStripeEven;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6381
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6382
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6383
				anRows.removeClass( oSettings.asStripeClasses.join(' ') );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6384
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6385
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6386
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6387
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6388
			 * Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6389
			 * See if we should load columns automatically or use defined ones
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6390
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6391
			var anThs = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6392
			var aoColumnsInit;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6393
			var nThead = this.getElementsByTagName('thead');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6394
			if ( nThead.length !== 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6395
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6396
				_fnDetectHeader( oSettings.aoHeader, nThead[0] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6397
				anThs = _fnGetUniqueThs( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6398
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6399
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6400
			/* If not given a column array, generate one with nulls */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6401
			if ( oInit.aoColumns === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6402
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6403
				aoColumnsInit = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6404
				for ( i=0, iLen=anThs.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6405
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6406
					aoColumnsInit.push( null );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6407
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6408
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6409
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6410
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6411
				aoColumnsInit = oInit.aoColumns;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6412
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6413
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6414
			/* Add the columns */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6415
			for ( i=0, iLen=aoColumnsInit.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6416
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6417
				/* Short cut - use the loop to check if we have column visibility state to restore */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6418
				if ( oInit.saved_aoColumns !== undefined && oInit.saved_aoColumns.length == iLen )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6419
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6420
					if ( aoColumnsInit[i] === null )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6421
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6422
						aoColumnsInit[i] = {};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6423
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6424
					aoColumnsInit[i].bVisible = oInit.saved_aoColumns[i].bVisible;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6425
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6426
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6427
				_fnAddColumn( oSettings, anThs ? anThs[i] : null );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6428
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6429
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6430
			/* Apply the column definitions */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6431
			_fnApplyColumnDefs( oSettings, oInit.aoColumnDefs, aoColumnsInit, function (iCol, oDef) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6432
				_fnColumnOptions( oSettings, iCol, oDef );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6433
			} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6434
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6435
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6436
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6437
			 * Sorting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6438
			 * Check the aaSorting array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6439
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6440
			for ( i=0, iLen=oSettings.aaSorting.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6441
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6442
				if ( oSettings.aaSorting[i][0] >= oSettings.aoColumns.length )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6443
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6444
					oSettings.aaSorting[i][0] = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6445
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6446
				var oColumn = oSettings.aoColumns[ oSettings.aaSorting[i][0] ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6447
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6448
				/* Add a default sorting index */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6449
				if ( oSettings.aaSorting[i][2] === undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6450
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6451
					oSettings.aaSorting[i][2] = 0;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6452
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6453
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6454
				/* If aaSorting is not defined, then we use the first indicator in asSorting */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6455
				if ( oInit.aaSorting === undefined && oSettings.saved_aaSorting === undefined )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6456
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6457
					oSettings.aaSorting[i][1] = oColumn.asSorting[0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6458
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6459
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6460
				/* Set the current sorting index based on aoColumns.asSorting */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6461
				for ( j=0, jLen=oColumn.asSorting.length ; j<jLen ; j++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6462
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6463
					if ( oSettings.aaSorting[i][1] == oColumn.asSorting[j] )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6464
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6465
						oSettings.aaSorting[i][2] = j;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6466
						break;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6467
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6468
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6469
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6470
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6471
			/* Do a first pass on the sorting classes (allows any size changes to be taken into
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6472
			 * account, and also will apply sorting disabled classes if disabled
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6473
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6474
			_fnSortingClasses( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6475
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6476
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6477
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6478
			 * Final init
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6479
			 * Cache the header, body and footer as required, creating them if needed
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6480
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6481
			var thead = $(this).children('thead');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6482
			if ( thead.length === 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6483
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6484
				thead = [ document.createElement( 'thead' ) ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6485
				this.appendChild( thead[0] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6486
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6487
			oSettings.nTHead = thead[0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6488
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6489
			var tbody = $(this).children('tbody');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6490
			if ( tbody.length === 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6491
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6492
				tbody = [ document.createElement( 'tbody' ) ];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6493
				this.appendChild( tbody[0] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6494
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6495
			oSettings.nTBody = tbody[0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6496
			oSettings.nTBody.setAttribute( "role", "alert" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6497
			oSettings.nTBody.setAttribute( "aria-live", "polite" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6498
			oSettings.nTBody.setAttribute( "aria-relevant", "all" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6499
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6500
			var tfoot = $(this).children('tfoot');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6501
			if ( tfoot.length > 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6502
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6503
				oSettings.nTFoot = tfoot[0];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6504
				_fnDetectHeader( oSettings.aoFooter, oSettings.nTFoot );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6505
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6506
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6507
			/* Check if there is data passing into the constructor */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6508
			if ( bUsePassedData )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6509
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6510
				for ( i=0 ; i<oInit.aaData.length ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6511
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6512
					_fnAddData( oSettings, oInit.aaData[ i ] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6513
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6514
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6515
			else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6516
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6517
				/* Grab the data from the page */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6518
				_fnGatherData( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6519
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6520
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6521
			/* Copy the data index array */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6522
			oSettings.aiDisplay = oSettings.aiDisplayMaster.slice();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6523
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6524
			/* Initialisation complete - table can be drawn */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6525
			oSettings.bInitialised = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6526
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6527
			/* Check if we need to initialise the table (it might not have been handed off to the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6528
			 * language processor)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6529
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6530
			if ( bInitHandedOff === false )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6531
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6532
				_fnInitialise( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6533
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6534
		} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6535
	};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6536
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6537
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6538
	 * Version string for plug-ins to check compatibility. Allowed format is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6539
	 * a.b.c.d.e where: a:int, b:int, c:int, d:string(dev|beta), e:int. d and
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6540
	 * e are optional
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6541
	 *  @member
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6542
	 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6543
	 *  @default Version number
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6544
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6545
	DataTable.version = "1.9.0";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6546
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6547
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6548
	 * Private data store, containing all of the settings objects that are created for the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6549
	 * tables on a given page.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6550
	 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6551
	 * Note that the <i>DataTable.settings</i> object is aliased to <i>jQuery.fn.dataTableExt</i> 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6552
	 * through which it may be accessed and manipulated, or <i>jQuery.fn.dataTable.settings</i>.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6553
	 *  @member
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6554
	 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6555
	 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6556
	 *  @private
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6557
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6558
	DataTable.settings = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6559
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6560
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6561
	 * Object models container, for the various models that DataTables has available
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6562
	 * to it. These models define the objects that are used to hold the active state 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6563
	 * and configuration of the table.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6564
	 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6565
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6566
	DataTable.models = {};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6567
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6568
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6569
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6570
	 * DataTables extension options and plug-ins. This namespace acts as a collection "area"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6571
	 * for plug-ins that can be used to extend the default DataTables behaviour - indeed many
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6572
	 * of the build in methods use this method to provide their own capabilities (sorting methods
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6573
	 * for example).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6574
	 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6575
	 * Note that this namespace is aliased to jQuery.fn.dataTableExt so it can be readily accessed
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6576
	 * and modified by plug-ins.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6577
	 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6578
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6579
	DataTable.models.ext = {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6580
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6581
		 * Plug-in filtering functions - this method of filtering is complimentary to the default
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6582
		 * type based filtering, and a lot more comprehensive as it allows you complete control
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6583
		 * over the filtering logic. Each element in this array is a function (parameters
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6584
		 * described below) that is called for every row in the table, and your logic decides if
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6585
		 * it should be included in the filtered data set or not.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6586
		 *   <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6587
		 *     <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6588
		 *       Function input parameters:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6589
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6590
		 *         <li>{object} DataTables settings object: see {@link DataTable.models.oSettings}.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6591
		 *         <li>{array|object} Data for the row to be processed (same as the original format
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6592
		 *           that was passed in as the data source, or an array from a DOM data source</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6593
		 *         <li>{int} Row index in aoData ({@link DataTable.models.oSettings.aoData}), which can
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6594
		 *           be useful to retrieve the TR element if you need DOM interaction.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6595
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6596
		 *     </li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6597
		 *     <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6598
		 *       Function return:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6599
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6600
		 *         <li>{boolean} Include the row in the filtered result set (true) or not (false)</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6601
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6602
		 *     </il>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6603
		 *   </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6604
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6605
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6606
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6607
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6608
		 *    // The following example shows custom filtering being applied to the fourth column (i.e.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6609
		 *    // the aData[3] index) based on two input values from the end-user, matching the data in 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6610
		 *    // a certain range.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6611
		 *    $.fn.dataTableExt.afnFiltering.push(
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6612
		 *      function( oSettings, aData, iDataIndex ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6613
		 *        var iMin = document.getElementById('min').value * 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6614
		 *        var iMax = document.getElementById('max').value * 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6615
		 *        var iVersion = aData[3] == "-" ? 0 : aData[3]*1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6616
		 *        if ( iMin == "" && iMax == "" ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6617
		 *          return true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6618
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6619
		 *        else if ( iMin == "" && iVersion < iMax ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6620
		 *          return true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6621
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6622
		 *        else if ( iMin < iVersion && "" == iMax ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6623
		 *          return true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6624
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6625
		 *        else if ( iMin < iVersion && iVersion < iMax ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6626
		 *          return true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6627
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6628
		 *        return false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6629
		 *      }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6630
		 *    );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6631
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6632
		"afnFiltering": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6633
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6634
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6635
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6636
		 * Plug-in sorting functions - this method of sorting is complimentary to the default type
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6637
		 * based sorting that DataTables does automatically, allowing much greater control over the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6638
		 * the data that is being used to sort a column. This is useful if you want to do sorting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6639
		 * based on live data (for example the contents of an 'input' element) rather than just the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6640
		 * static string that DataTables knows of. The way these plug-ins work is that you create
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6641
		 * an array of the values you wish to be sorted for the column in question and then return
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6642
		 * that array. Which pre-sorting function is run here depends on the sSortDataType parameter
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6643
		 * that is used for the column (if any). This is the corollary of <i>ofnSearch</i> for sort 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6644
		 * data.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6645
		 *   <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6646
	     *     <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6647
	     *       Function input parameters:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6648
	     *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6649
		 *         <li>{object} DataTables settings object: see {@link DataTable.models.oSettings}.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6650
	     *         <li>{int} Target column index</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6651
	     *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6652
	     *     </li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6653
		 *     <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6654
		 *       Function return:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6655
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6656
		 *         <li>{array} Data for the column to be sorted upon</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6657
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6658
		 *     </il>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6659
		 *   </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6660
		 *  
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6661
		 * Note that as of v1.9, it is typically preferable to use <i>mDataProp</i> to prepare data for
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6662
		 * the different uses that DataTables can put the data to. Specifically <i>mDataProp</i> when
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6663
		 * used as a function will give you a 'type' (sorting, filtering etc) that you can use to 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6664
		 * prepare the data as required for the different types. As such, this method is deprecated.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6665
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6666
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6667
		 *  @deprecated
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6668
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6669
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6670
		 *    // Updating the cached sorting information with user entered values in HTML input elements
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6671
		 *    jQuery.fn.dataTableExt.afnSortData['dom-text'] = function ( oSettings, iColumn )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6672
		 *    {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6673
		 *      var aData = [];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6674
		 *      $( 'td:eq('+iColumn+') input', oSettings.oApi._fnGetTrNodes(oSettings) ).each( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6675
		 *        aData.push( this.value );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6676
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6677
		 *      return aData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6678
		 *    }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6679
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6680
		"afnSortData": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6681
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6682
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6683
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6684
		 * Feature plug-ins - This is an array of objects which describe the feature plug-ins that are
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6685
		 * available to DataTables. These feature plug-ins are accessible through the sDom initialisation
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6686
		 * option. As such, each feature plug-in must describe a function that is used to initialise
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6687
		 * itself (fnInit), a character so the feature can be enabled by sDom (cFeature) and the name
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6688
		 * of the feature (sFeature). Thus the objects attached to this method must provide:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6689
		 *   <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6690
		 *     <li>{function} fnInit Initialisation of the plug-in
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6691
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6692
	     *         <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6693
	     *           Function input parameters:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6694
	     *           <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6695
		 *             <li>{object} DataTables settings object: see {@link DataTable.models.oSettings}.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6696
	     *           </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6697
	     *         </li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6698
		 *         <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6699
		 *           Function return:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6700
		 *           <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6701
		 *             <li>{node|null} The element which contains your feature. Note that the return
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6702
		 *                may also be void if your plug-in does not require to inject any DOM elements 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6703
		 *                into DataTables control (sDom) - for example this might be useful when 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6704
		 *                developing a plug-in which allows table control via keyboard entry.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6705
		 *           </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6706
		 *         </il>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6707
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6708
		 *     </li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6709
		 *     <li>{character} cFeature Character that will be matched in sDom - case sensitive</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6710
		 *     <li>{string} sFeature Feature name</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6711
		 *   </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6712
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6713
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6714
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6715
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6716
		 *    // How TableTools initialises itself.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6717
		 *    $.fn.dataTableExt.aoFeatures.push( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6718
		 *      "fnInit": function( oSettings ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6719
		 *        return new TableTools( { "oDTSettings": oSettings } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6720
		 *      },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6721
		 *      "cFeature": "T",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6722
		 *      "sFeature": "TableTools"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6723
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6724
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6725
		"aoFeatures": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6726
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6727
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6728
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6729
		 * Type detection plug-in functions - DataTables utilises types to define how sorting and
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6730
		 * filtering behave, and types can be either  be defined by the developer (sType for the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6731
		 * column) or they can be automatically detected by the methods in this array. The functions
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6732
		 * defined in the array are quite simple, taking a single parameter (the data to analyse) 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6733
		 * and returning the type if it is a known type, or null otherwise.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6734
		 *   <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6735
	     *     <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6736
	     *       Function input parameters:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6737
	     *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6738
		 *         <li>{*} Data from the column cell to be analysed</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6739
	     *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6740
	     *     </li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6741
		 *     <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6742
		 *       Function return:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6743
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6744
		 *         <li>{string|null} Data type detected, or null if unknown (and thus pass it
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6745
		 *           on to the other type detection functions.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6746
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6747
		 *     </il>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6748
		 *   </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6749
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6750
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6751
		 *  
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6752
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6753
		 *    // Currency type detection plug-in:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6754
		 *    jQuery.fn.dataTableExt.aTypes.push(
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6755
		 *      function ( sData ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6756
		 *        var sValidChars = "0123456789.-";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6757
		 *        var Char;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6758
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6759
		 *        // Check the numeric part
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6760
		 *        for ( i=1 ; i<sData.length ; i++ ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6761
		 *          Char = sData.charAt(i); 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6762
		 *          if (sValidChars.indexOf(Char) == -1) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6763
		 *            return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6764
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6765
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6766
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6767
		 *        // Check prefixed by currency
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6768
		 *        if ( sData.charAt(0) == '$' || sData.charAt(0) == '&pound;' ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6769
		 *          return 'currency';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6770
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6771
		 *        return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6772
		 *      }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6773
		 *    );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6774
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6775
		"aTypes": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6776
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6777
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6778
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6779
		 * Provide a common method for plug-ins to check the version of DataTables being used, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6780
		 * in order to ensure compatibility.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6781
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6782
		 *  @param {string} sVersion Version string to check for, in the format "X.Y.Z". Note 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6783
		 *    that the formats "X" and "X.Y" are also acceptable.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6784
		 *  @returns {boolean} true if this version of DataTables is greater or equal to the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6785
		 *    required version, or false if this version of DataTales is not suitable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6786
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6787
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6788
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6789
		 *      var oTable = $('#example').dataTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6790
		 *      alert( oTable.fnVersionCheck( '1.9.0' ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6791
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6792
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6793
		"fnVersionCheck": function( sVersion )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6794
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6795
			/* This is cheap, but very effective */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6796
			var fnZPad = function (Zpad, count)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6797
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6798
				while(Zpad.length < count) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6799
					Zpad += '0';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6800
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6801
				return Zpad;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6802
			};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6803
			var aThis = DataTable.ext.sVersion.split('.');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6804
			var aThat = sVersion.split('.');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6805
			var sThis = '', sThat = '';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6806
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6807
			for ( var i=0, iLen=aThat.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6808
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6809
				sThis += fnZPad( aThis[i], 3 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6810
				sThat += fnZPad( aThat[i], 3 );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6811
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6812
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6813
			return parseInt(sThis, 10) >= parseInt(sThat, 10);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6814
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6815
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6816
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6817
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6818
		 * Index for what 'this' index API functions should use
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6819
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6820
		 *  @default 0
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6821
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6822
		"iApiIndex": 0,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6823
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6824
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6825
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6826
		 * Pre-processing of filtering data plug-ins - When you assign the sType for a column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6827
		 * (or have it automatically detected for you by DataTables or a type detection plug-in), 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6828
		 * you will typically be using this for custom sorting, but it can also be used to provide 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6829
		 * custom filtering by allowing you to pre-processing the data and returning the data in
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6830
		 * the format that should be filtered upon. This is done by adding functions this object 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6831
		 * with a parameter name which matches the sType for that target column. This is the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6832
		 * corollary of <i>afnSortData</i> for filtering data.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6833
		 *   <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6834
	     *     <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6835
	     *       Function input parameters:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6836
	     *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6837
		 *         <li>{*} Data from the column cell to be prepared for filtering</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6838
	     *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6839
	     *     </li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6840
		 *     <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6841
		 *       Function return:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6842
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6843
		 *         <li>{string|null} Formatted string that will be used for the filtering.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6844
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6845
		 *     </il>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6846
		 *   </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6847
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6848
		 * Note that as of v1.9, it is typically preferable to use <i>mDataProp</i> to prepare data for
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6849
		 * the different uses that DataTables can put the data to. Specifically <i>mDataProp</i> when
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6850
		 * used as a function will give you a 'type' (sorting, filtering etc) that you can use to 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6851
		 * prepare the data as required for the different types. As such, this method is deprecated.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6852
		 *  @type object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6853
		 *  @default {}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6854
		 *  @deprecated
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6855
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6856
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6857
		 *    $.fn.dataTableExt.ofnSearch['title-numeric'] = function ( sData ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6858
		 *      return sData.replace(/\n/g," ").replace( /<.*?>/g, "" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6859
		 *    }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6860
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6861
		"ofnSearch": {},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6862
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6863
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6864
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6865
		 * Container for all private functions in DataTables so they can be exposed externally
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6866
		 *  @type object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6867
		 *  @default {}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6868
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6869
		"oApi": {},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6870
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6871
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6872
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6873
		 * Storage for the various classes that DataTables uses
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6874
		 *  @type object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6875
		 *  @default {}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6876
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6877
		"oStdClasses": {},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6878
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6879
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6880
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6881
		 * Storage for the various classes that DataTables uses - jQuery UI suitable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6882
		 *  @type object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6883
		 *  @default {}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6884
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6885
		"oJUIClasses": {},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6886
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6887
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6888
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6889
		 * Pagination plug-in methods - The style and controls of the pagination can significantly 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6890
		 * impact on how the end user interacts with the data in your table, and DataTables allows 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6891
		 * the addition of pagination controls by extending this object, which can then be enabled
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6892
		 * through the <i>sPaginationType</i> initialisation parameter. Each pagination type that
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6893
		 * is added is an object (the property name of which is what <i>sPaginationType</i> refers
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6894
		 * to) that has two properties, both methods that are used by DataTables to update the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6895
		 * control's state.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6896
		 *   <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6897
		 *     <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6898
		 *       fnInit -  Initialisation of the paging controls. Called only during initialisation 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6899
		 *         of the table. It is expected that this function will add the required DOM elements 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6900
		 *         to the page for the paging controls to work. The element pointer 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6901
		 *         'oSettings.aanFeatures.p' array is provided by DataTables to contain the paging 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6902
		 *         controls (note that this is a 2D array to allow for multiple instances of each 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6903
		 *         DataTables DOM element). It is suggested that you add the controls to this element 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6904
		 *         as children
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6905
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6906
	     *         <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6907
	     *           Function input parameters:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6908
	     *           <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6909
		 *             <li>{object} DataTables settings object: see {@link DataTable.models.oSettings}.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6910
		 *             <li>{node} Container into which the pagination controls must be inserted</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6911
		 *             <li>{function} Draw callback function - whenever the controls cause a page
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6912
		 *               change, this method must be called to redraw the table.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6913
	     *           </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6914
	     *         </li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6915
		 *         <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6916
		 *           Function return:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6917
		 *           <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6918
		 *             <li>No return required</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6919
		 *           </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6920
		 *         </il>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6921
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6922
		 *     </il>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6923
		 *     <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6924
		 *       fnInit -  This function is called whenever the paging status of the table changes and is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6925
		 *         typically used to update classes and/or text of the paging controls to reflex the new 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6926
		 *         status.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6927
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6928
	     *         <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6929
	     *           Function input parameters:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6930
	     *           <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6931
		 *             <li>{object} DataTables settings object: see {@link DataTable.models.oSettings}.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6932
		 *             <li>{function} Draw callback function - in case you need to redraw the table again
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6933
		 *               or attach new event listeners</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6934
	     *           </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6935
	     *         </li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6936
		 *         <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6937
		 *           Function return:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6938
		 *           <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6939
		 *             <li>No return required</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6940
		 *           </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6941
		 *         </il>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6942
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6943
		 *     </il>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6944
		 *   </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6945
		 *  @type object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6946
		 *  @default {}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6947
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6948
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6949
		 *    $.fn.dataTableExt.oPagination.four_button = {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6950
		 *      "fnInit": function ( oSettings, nPaging, fnCallbackDraw ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6951
		 *        nFirst = document.createElement( 'span' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6952
		 *        nPrevious = document.createElement( 'span' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6953
		 *        nNext = document.createElement( 'span' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6954
		 *        nLast = document.createElement( 'span' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6955
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6956
		 *        nFirst.appendChild( document.createTextNode( oSettings.oLanguage.oPaginate.sFirst ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6957
		 *        nPrevious.appendChild( document.createTextNode( oSettings.oLanguage.oPaginate.sPrevious ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6958
		 *        nNext.appendChild( document.createTextNode( oSettings.oLanguage.oPaginate.sNext ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6959
		 *        nLast.appendChild( document.createTextNode( oSettings.oLanguage.oPaginate.sLast ) );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6960
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6961
		 *        nFirst.className = "paginate_button first";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6962
		 *        nPrevious.className = "paginate_button previous";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6963
		 *        nNext.className="paginate_button next";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6964
		 *        nLast.className = "paginate_button last";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6965
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6966
		 *        nPaging.appendChild( nFirst );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6967
		 *        nPaging.appendChild( nPrevious );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6968
		 *        nPaging.appendChild( nNext );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6969
		 *        nPaging.appendChild( nLast );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6970
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6971
		 *        $(nFirst).click( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6972
		 *          oSettings.oApi._fnPageChange( oSettings, "first" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6973
		 *          fnCallbackDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6974
		 *        } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6975
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6976
		 *        $(nPrevious).click( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6977
		 *          oSettings.oApi._fnPageChange( oSettings, "previous" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6978
		 *          fnCallbackDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6979
		 *        } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6980
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6981
		 *        $(nNext).click( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6982
		 *          oSettings.oApi._fnPageChange( oSettings, "next" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6983
		 *          fnCallbackDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6984
		 *        } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6985
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6986
		 *        $(nLast).click( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6987
		 *          oSettings.oApi._fnPageChange( oSettings, "last" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6988
		 *          fnCallbackDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6989
		 *        } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6990
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6991
		 *        $(nFirst).bind( 'selectstart', function () { return false; } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6992
		 *        $(nPrevious).bind( 'selectstart', function () { return false; } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6993
		 *        $(nNext).bind( 'selectstart', function () { return false; } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6994
		 *        $(nLast).bind( 'selectstart', function () { return false; } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6995
		 *      },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6996
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6997
		 *      "fnUpdate": function ( oSettings, fnCallbackDraw ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6998
		 *        if ( !oSettings.aanFeatures.p ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  6999
		 *          return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7000
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7001
		 *        
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7002
		 *        // Loop over each instance of the pager
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7003
		 *        var an = oSettings.aanFeatures.p;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7004
		 *        for ( var i=0, iLen=an.length ; i<iLen ; i++ ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7005
		 *          var buttons = an[i].getElementsByTagName('span');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7006
		 *          if ( oSettings._iDisplayStart === 0 ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7007
		 *            buttons[0].className = "paginate_disabled_previous";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7008
		 *            buttons[1].className = "paginate_disabled_previous";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7009
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7010
		 *          else {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7011
		 *            buttons[0].className = "paginate_enabled_previous";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7012
		 *            buttons[1].className = "paginate_enabled_previous";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7013
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7014
		 *          
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7015
		 *          if ( oSettings.fnDisplayEnd() == oSettings.fnRecordsDisplay() ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7016
		 *            buttons[2].className = "paginate_disabled_next";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7017
		 *            buttons[3].className = "paginate_disabled_next";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7018
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7019
		 *          else {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7020
		 *            buttons[2].className = "paginate_enabled_next";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7021
		 *            buttons[3].className = "paginate_enabled_next";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7022
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7023
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7024
		 *      }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7025
		 *    };
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7026
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7027
		"oPagination": {},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7028
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7029
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7030
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7031
		 * Sorting plug-in methods - Sorting in DataTables is based on the detected type of the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7032
		 * data column (you can add your own type detection functions, or override automatic 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7033
		 * detection using sType). With this specific type given to the column, DataTables will 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7034
		 * apply the required sort from the functions in the object. Each sort type must provide
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7035
		 * two mandatory methods, one each for ascending and descending sorting, and can optionally
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7036
		 * provide a pre-formatting method that will help speed up sorting by allowing DataTables
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7037
		 * to pre-format the sort data only once (rather than every time the actual sort functions
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7038
		 * are run). The two sorting functions are typical Javascript sort methods:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7039
		 *   <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7040
	     *     <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7041
	     *       Function input parameters:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7042
	     *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7043
		 *         <li>{*} Data to compare to the second parameter</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7044
		 *         <li>{*} Data to compare to the first parameter</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7045
	     *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7046
	     *     </li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7047
		 *     <li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7048
		 *       Function return:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7049
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7050
		 *         <li>{int} Sorting match: <0 if first parameter should be sorted lower than
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7051
		 *           the second parameter, ===0 if the two parameters are equal and >0 if
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7052
		 *           the first parameter should be sorted height than the second parameter.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7053
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7054
		 *     </il>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7055
		 *   </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7056
		 *  @type object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7057
		 *  @default {}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7058
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7059
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7060
		 *    // Case-sensitive string sorting, with no pre-formatting method
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7061
		 *    $.extend( $.fn.dataTableExt.oSort, {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7062
		 *      "string-case-asc": function(x,y) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7063
		 *        return ((x < y) ? -1 : ((x > y) ? 1 : 0));
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7064
		 *      },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7065
		 *      "string-case-desc": function(x,y) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7066
		 *        return ((x < y) ? 1 : ((x > y) ? -1 : 0));
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7067
		 *      }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7068
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7069
		 *
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7070
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7071
		 *    // Case-insensitive string sorting, with pre-formatting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7072
		 *    $.extend( $.fn.dataTableExt.oSort, {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7073
		 *      "string-pre": function(x) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7074
		 *        return x.toLowerCase();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7075
		 *      },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7076
		 *      "string-asc": function(x,y) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7077
		 *        return ((x < y) ? -1 : ((x > y) ? 1 : 0));
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7078
		 *      },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7079
		 *      "string-desc": function(x,y) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7080
		 *        return ((x < y) ? 1 : ((x > y) ? -1 : 0));
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7081
		 *      }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7082
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7083
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7084
		"oSort": {},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7085
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7086
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7087
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7088
		 * Version string for plug-ins to check compatibility. Allowed format is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7089
		 * a.b.c.d.e where: a:int, b:int, c:int, d:string(dev|beta), e:int. d and
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7090
		 * e are optional
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7091
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7092
		 *  @default Version number
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7093
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7094
		"sVersion": DataTable.version,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7095
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7096
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7097
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7098
		 * How should DataTables report an error. Can take the value 'alert' or 'throw'
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7099
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7100
		 *  @default alert
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7101
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7102
		"sErrMode": "alert",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7103
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7104
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7105
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7106
		 * Store information for DataTables to access globally about other instances
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7107
		 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7108
		 *  @private
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7109
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7110
		"_oExternConfig": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7111
			/* int:iNextUnique - next unique number for an instance */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7112
			"iNextUnique": 0
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7113
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7114
	};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7115
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7116
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7117
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7118
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7119
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7120
	 * Template object for the way in which DataTables holds information about
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7121
	 * search information for the global filter and individual column filters.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7122
	 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7123
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7124
	DataTable.models.oSearch = {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7125
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7126
		 * Flag to indicate if the filtering should be case insensitive or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7127
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7128
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7129
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7130
		"bCaseInsensitive": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7131
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7132
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7133
		 * Applied search term
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7134
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7135
		 *  @default <i>Empty string</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7136
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7137
		"sSearch": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7138
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7139
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7140
		 * Flag to indicate if the search term should be interpreted as a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7141
		 * regular expression (true) or not (false) and therefore and special
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7142
		 * regex characters escaped.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7143
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7144
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7145
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7146
		"bRegex": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7147
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7148
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7149
		 * Flag to indicate if DataTables is to use its smart filtering or not.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7150
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7151
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7152
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7153
		"bSmart": true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7154
	};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7155
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7156
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7157
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7158
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7159
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7160
	 * Template object for the way in which DataTables holds information about
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7161
	 * each individual row. This is the object format used for the settings 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7162
	 * aoData array.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7163
	 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7164
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7165
	DataTable.models.oRow = {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7166
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7167
		 * TR element for the row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7168
		 *  @type node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7169
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7170
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7171
		"nTr": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7172
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7173
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7174
		 * Data object from the original data source for the row. This is either
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7175
		 * an array if using the traditional form of DataTables, or an object if
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7176
		 * using mDataProp options. The exact type will depend on the passed in
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7177
		 * data from the data source, or will be an array if using DOM a data 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7178
		 * source.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7179
		 *  @type array|object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7180
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7181
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7182
		"_aData": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7183
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7184
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7185
		 * Sorting data cache - this array is ostensibly the same length as the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7186
		 * number of columns (although each index is generated only as it is 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7187
		 * needed), and holds the data that is used for sorting each column in the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7188
		 * row. We do this cache generation at the start of the sort in order that
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7189
		 * the formatting of the sort data need be done only once for each cell
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7190
		 * per sort. This array should not be read from or written to by anything
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7191
		 * other than the master sorting methods.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7192
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7193
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7194
		 *  @private
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7195
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7196
		"_aSortData": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7197
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7198
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7199
		 * Array of TD elements that are cached for hidden rows, so they can be
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7200
		 * reinserted into the table if a column is made visible again (or to act
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7201
		 * as a store if a column is made hidden). Only hidden columns have a 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7202
		 * reference in the array. For non-hidden columns the value is either
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7203
		 * undefined or null.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7204
		 *  @type array nodes
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7205
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7206
		 *  @private
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7207
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7208
		"_anHidden": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7209
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7210
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7211
		 * Cache of the class name that DataTables has applied to the row, so we
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7212
		 * can quickly look at this variable rather than needing to do a DOM check
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7213
		 * on className for the nTr property.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7214
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7215
		 *  @default <i>Empty string</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7216
		 *  @private
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7217
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7218
		"_sRowStripe": ""
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7219
	};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7220
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7221
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7222
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7223
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7224
	 * Template object for the column information object in DataTables. This object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7225
	 * is held in the settings aoColumns array and contains all the information that
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7226
	 * DataTables needs about each individual column.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7227
	 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7228
	 * Note that this object is related to {@link DataTable.defaults.columns} 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7229
	 * but this one is the internal data store for DataTables's cache of columns.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7230
	 * It should NOT be manipulated outside of DataTables. Any configuration should
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7231
	 * be done through the initialisation options.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7232
	 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7233
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7234
	DataTable.models.oColumn = {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7235
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7236
		 * A list of the columns that sorting should occur on when this column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7237
		 * is sorted. That this property is an array allows multi-column sorting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7238
		 * to be defined for a column (for example first name / last name columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7239
		 * would benefit from this). The values are integers pointing to the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7240
		 * columns to be sorted on (typically it will be a single integer pointing
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7241
		 * at itself, but that doesn't need to be the case).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7242
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7243
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7244
		"aDataSort": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7245
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7246
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7247
		 * Define the sorting directions that are applied to the column, in sequence
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7248
		 * as the column is repeatedly sorted upon - i.e. the first value is used
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7249
		 * as the sorting direction when the column if first sorted (clicked on).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7250
		 * Sort it again (click again) and it will move on to the next index.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7251
		 * Repeat until loop.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7252
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7253
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7254
		"asSorting": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7255
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7256
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7257
		 * Flag to indicate if the column is searchable, and thus should be included
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7258
		 * in the filtering or not.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7259
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7260
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7261
		"bSearchable": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7262
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7263
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7264
		 * Flag to indicate if the column is sortable or not.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7265
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7266
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7267
		"bSortable": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7268
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7269
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7270
		 * When using fnRender, you have two options for what to do with the data,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7271
		 * and this property serves as the switch. Firstly, you can have the sorting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7272
		 * and filtering use the rendered value (true - default), or you can have
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7273
		 * the sorting and filtering us the original value (false).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7274
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7275
		 * *NOTE* It is it is advisable now to use mDataProp as a function and make 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7276
		 * use of the 'type' that it gives, allowing (potentially) different data to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7277
		 * be used for sorting, filtering, display and type detection.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7278
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7279
		 *  @deprecated
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7280
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7281
		"bUseRendered": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7282
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7283
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7284
		 * Flag to indicate if the column is currently visible in the table or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7285
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7286
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7287
		"bVisible": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7288
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7289
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7290
		 * Flag to indicate to the type detection method if the automatic type
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7291
		 * detection should be used, or if a column type (sType) has been specified
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7292
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7293
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7294
		 *  @private
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7295
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7296
		"_bAutoType": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7297
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7298
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7299
		 * Developer definable function that is called whenever a cell is created (Ajax source,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7300
		 * etc) or processed for input (DOM source). This can be used as a compliment to fnRender
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7301
		 * allowing you to modify the DOM element (add background colour for example) when the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7302
		 * element is available (since it is not when fnRender is called).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7303
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7304
		 *  @param {element} nTd The TD node that has been created
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7305
		 *  @param {*} sData The Data for the cell
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7306
		 *  @param {array|object} oData The data for the whole row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7307
		 *  @param {int} iRow The row index for the aoData data store
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7308
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7309
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7310
		"fnCreatedCell": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7311
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7312
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7313
		 * Function to get data from a cell in a column. You should <b>never</b>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7314
		 * access data directly through _aData internally in DataTables - always use
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7315
		 * the method attached to this property. It allows mDataProp to function as
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7316
		 * required. This function is automatically assigned by the column 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7317
		 * initialisation method
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7318
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7319
		 *  @param {array|object} oData The data array/object for the array 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7320
		 *    (i.e. aoData[]._aData)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7321
		 *  @param {string} sSpecific The specific data type you want to get - 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7322
		 *    'display', 'type' 'filter' 'sort'
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7323
		 *  @returns {*} The data for the cell from the given row's data
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7324
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7325
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7326
		"fnGetData": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7327
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7328
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7329
		 * Custom display function that will be called for the display of each cell 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7330
		 * in this column.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7331
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7332
		 *  @param {object} o Object with the following parameters:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7333
		 *  @param {int}    o.iDataRow The row in aoData
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7334
		 *  @param {int}    o.iDataColumn The column in question
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7335
		 *  @param {array   o.aData The data for the row in question
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7336
		 *  @param {object} o.oSettings The settings object for this DataTables instance
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7337
		 *  @returns {string} The string you which to use in the display
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7338
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7339
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7340
		"fnRender": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7341
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7342
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7343
		 * Function to set data for a cell in the column. You should <b>never</b> 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7344
		 * set the data directly to _aData internally in DataTables - always use
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7345
		 * this method. It allows mDataProp to function as required. This function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7346
		 * is automatically assigned by the column initialisation method
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7347
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7348
		 *  @param {array|object} oData The data array/object for the array 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7349
		 *    (i.e. aoData[]._aData)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7350
		 *  @param {*} sValue Value to set
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7351
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7352
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7353
		"fnSetData": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7354
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7355
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7356
		 * Property to read the value for the cells in the column from the data 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7357
		 * source array / object. If null, then the default content is used, if a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7358
		 * function is given then the return from the function is used.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7359
		 *  @type function|int|string|null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7360
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7361
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7362
		"mDataProp": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7363
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7364
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7365
		 * Unique header TH/TD element for this column - this is what the sorting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7366
		 * listener is attached to (if sorting is enabled.)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7367
		 *  @type node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7368
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7369
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7370
		"nTh": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7371
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7372
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7373
		 * Unique footer TH/TD element for this column (if there is one). Not used 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7374
		 * in DataTables as such, but can be used for plug-ins to reference the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7375
		 * footer for each column.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7376
		 *  @type node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7377
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7378
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7379
		"nTf": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7380
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7381
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7382
		 * The class to apply to all TD elements in the table's TBODY for the column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7383
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7384
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7385
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7386
		"sClass": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7387
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7388
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7389
		 * When DataTables calculates the column widths to assign to each column,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7390
		 * it finds the longest string in each column and then constructs a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7391
		 * temporary table and reads the widths from that. The problem with this
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7392
		 * is that "mmm" is much wider then "iiii", but the latter is a longer 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7393
		 * string - thus the calculation can go wrong (doing it properly and putting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7394
		 * it into an DOM object and measuring that is horribly(!) slow). Thus as
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7395
		 * a "work around" we provide this option. It will append its value to the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7396
		 * text that is found to be the longest string for the column - i.e. padding.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7397
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7398
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7399
		"sContentPadding": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7400
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7401
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7402
		 * Allows a default value to be given for a column's data, and will be used
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7403
		 * whenever a null data source is encountered (this can be because mDataProp
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7404
		 * is set to null, or because the data source itself is null).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7405
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7406
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7407
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7408
		"sDefaultContent": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7409
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7410
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7411
		 * Name for the column, allowing reference to the column by name as well as
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7412
		 * by index (needs a lookup to work by name).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7413
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7414
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7415
		"sName": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7416
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7417
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7418
		 * Custom sorting data type - defines which of the available plug-ins in
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7419
		 * afnSortData the custom sorting will use - if any is defined.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7420
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7421
		 *  @default std
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7422
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7423
		"sSortDataType": 'std',
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7424
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7425
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7426
		 * Class to be applied to the header element when sorting on this column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7427
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7428
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7429
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7430
		"sSortingClass": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7431
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7432
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7433
		 * Class to be applied to the header element when sorting on this column -
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7434
		 * when jQuery UI theming is used.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7435
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7436
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7437
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7438
		"sSortingClassJUI": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7439
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7440
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7441
		 * Title of the column - what is seen in the TH element (nTh).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7442
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7443
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7444
		"sTitle": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7445
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7446
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7447
		 * Column sorting and filtering type
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7448
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7449
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7450
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7451
		"sType": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7452
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7453
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7454
		 * Width of the column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7455
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7456
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7457
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7458
		"sWidth": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7459
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7460
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7461
		 * Width of the column when it was first "encountered"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7462
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7463
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7464
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7465
		"sWidthOrig": null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7466
	};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7467
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7468
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7469
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7470
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7471
	 * Initialisation options that can be given to DataTables at initialisation 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7472
	 * time.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7473
	 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7474
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7475
	DataTable.defaults = {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7476
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7477
		 * An array of data to use for the table, passed in at initialisation which 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7478
		 * will be used in preference to any data which is already in the DOM. This is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7479
		 * particularly useful for constructing tables purely in Javascript, for
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7480
		 * example with a custom Ajax call.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7481
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7482
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7483
		 *  @dtopt Option
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7484
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7485
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7486
		 *    // Using a 2D array data source
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7487
		 *    $(document).ready( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7488
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7489
		 *        "aaData": [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7490
		 *          ['Trident', 'Internet Explorer 4.0', 'Win 95+', 4, 'X'],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7491
		 *          ['Trident', 'Internet Explorer 5.0', 'Win 95+', 5, 'C'],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7492
		 *        ],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7493
		 *        "aoColumns": [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7494
		 *          { "sTitle": "Engine" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7495
		 *          { "sTitle": "Browser" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7496
		 *          { "sTitle": "Platform" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7497
		 *          { "sTitle": "Version" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7498
		 *          { "sTitle": "Grade" }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7499
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7500
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7501
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7502
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7503
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7504
		 *    // Using an array of objects as a data source (mDataProp)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7505
		 *    $(document).ready( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7506
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7507
		 *        "aaData": [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7508
		 *          {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7509
		 *            "engine":   "Trident",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7510
		 *            "browser":  "Internet Explorer 4.0",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7511
		 *            "platform": "Win 95+",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7512
		 *            "version":  4,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7513
		 *            "grade":    "X"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7514
		 *          },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7515
		 *          {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7516
		 *            "engine":   "Trident",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7517
		 *            "browser":  "Internet Explorer 5.0",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7518
		 *            "platform": "Win 95+",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7519
		 *            "version":  5,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7520
		 *            "grade":    "C"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7521
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7522
		 *        ],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7523
		 *        "aoColumns": [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7524
		 *          { "sTitle": "Engine",   "mDataProp": "engine" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7525
		 *          { "sTitle": "Browser",  "mDataProp": "browser" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7526
		 *          { "sTitle": "Platform", "mDataProp": "platform" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7527
		 *          { "sTitle": "Version",  "mDataProp": "version" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7528
		 *          { "sTitle": "Grade",    "mDataProp": "grade" }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7529
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7530
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7531
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7532
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7533
		"aaData": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7534
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7535
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7536
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7537
		 * If sorting is enabled, then DataTables will perform a first pass sort on 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7538
		 * initialisation. You can define which column(s) the sort is performed upon, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7539
		 * and the sorting direction, with this variable. The aaSorting array should 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7540
		 * contain an array for each column to be sorted initially containing the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7541
		 * column's index and a direction string ('asc' or 'desc').
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7542
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7543
		 *  @default [[0,'asc']]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7544
		 *  @dtopt Option
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7545
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7546
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7547
		 *    // Sort by 3rd column first, and then 4th column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7548
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7549
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7550
		 *        "aaSorting": [[2,'asc'], [3,'desc']]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7551
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7552
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7553
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7554
		 *    // No initial sorting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7555
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7556
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7557
		 *        "aaSorting": []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7558
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7559
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7560
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7561
		"aaSorting": [[0,'asc']],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7562
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7563
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7564
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7565
		 * This parameter is basically identical to the aaSorting parameter, but 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7566
		 * cannot be overridden by user interaction with the table. What this means 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7567
		 * is that you could have a column (visible or hidden) which the sorting will 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7568
		 * always be forced on first - any sorting after that (from the user) will 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7569
		 * then be performed as required. This can be useful for grouping rows 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7570
		 * together.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7571
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7572
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7573
		 *  @dtopt Option
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7574
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7575
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7576
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7577
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7578
		 *        "aaSortingFixed": [[0,'asc']]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7579
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7580
		 *    } )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7581
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7582
		"aaSortingFixed": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7583
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7584
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7585
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7586
		 * This parameter allows you to readily specify the entries in the length drop
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7587
		 * down menu that DataTables shows when pagination is enabled. It can be 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7588
		 * either a 1D array of options which will be used for both the displayed 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7589
		 * option and the value, or a 2D array which will use the array in the first 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7590
		 * position as the value, and the array in the second position as the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7591
		 * displayed options (useful for language strings such as 'All').
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7592
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7593
		 *  @default [ 10, 25, 50, 100 ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7594
		 *  @dtopt Option
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7595
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7596
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7597
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7598
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7599
		 *        "aLengthMenu": [[10, 25, 50, -1], [10, 25, 50, "All"]]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7600
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7601
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7602
		 *  
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7603
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7604
		 *    // Setting the default display length as well as length menu
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7605
		 *    // This is likely to be wanted if you remove the '10' option which
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7606
		 *    // is the iDisplayLength default.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7607
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7608
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7609
		 *        "iDisplayLength": 25,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7610
		 *        "aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7611
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7612
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7613
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7614
		"aLengthMenu": [ 10, 25, 50, 100 ],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7615
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7616
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7617
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7618
		 * The aoColumns option in the initialisation parameter allows you to define
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7619
		 * details about the way individual columns behave. For a full list of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7620
		 * column options that can be set, please see 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7621
		 * {@link DataTable.defaults.columns}. Note that if you use aoColumns to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7622
		 * define your columns, you must have an entry in the array for every single
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7623
		 * column that you have in your table (these can be null if you don't which
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7624
		 * to specify any options).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7625
		 *  @member
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7626
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7627
		"aoColumns": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7628
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7629
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7630
		 * Very similar to aoColumns, aoColumnDefs allows you to target a specific 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7631
		 * column, multiple columns, or all columns, using the aTargets property of 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7632
		 * each object in the array. This allows great flexibility when creating 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7633
		 * tables, as the aoColumnDefs arrays can be of any length, targeting the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7634
		 * columns you specifically want. aoColumnDefs may use any of the column 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7635
		 * options available: {@link DataTable.defaults.columns}, but it _must_
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7636
		 * have aTargets defined in each object in the array. Values in the aTargets
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7637
		 * array may be:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7638
		 *   <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7639
		 *     <li>a string - class name will be matched on the TH for the column</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7640
		 *     <li>0 or a positive integer - column index counting from the left</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7641
		 *     <li>a negative integer - column index counting from the right</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7642
		 *     <li>the string "_all" - all columns (i.e. assign a default)</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7643
		 *   </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7644
		 *  @member
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7645
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7646
		"aoColumnDefs": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7647
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7648
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7649
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7650
		 * Basically the same as oSearch, this parameter defines the individual column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7651
		 * filtering state at initialisation time. The array must be of the same size 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7652
		 * as the number of columns, and each element be an object with the parameters
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7653
		 * "sSearch" and "bEscapeRegex" (the latter is optional). 'null' is also
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7654
		 * accepted and the default will be used.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7655
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7656
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7657
		 *  @dtopt Option
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7658
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7659
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7660
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7661
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7662
		 *        "aoSearchCols": [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7663
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7664
		 *          { "sSearch": "My filter" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7665
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7666
		 *          { "sSearch": "^[0-9]", "bEscapeRegex": false }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7667
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7668
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7669
		 *    } )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7670
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7671
		"aoSearchCols": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7672
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7673
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7674
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7675
		 * An array of CSS classes that should be applied to displayed rows. This 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7676
		 * array may be of any length, and DataTables will apply each class 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7677
		 * sequentially, looping when required.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7678
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7679
		 *  @default [ 'odd', 'even' ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7680
		 *  @dtopt Option
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7681
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7682
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7683
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7684
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7685
		 *        "asStripeClasses": [ 'strip1', 'strip2', 'strip3' ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7686
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7687
		 *    } )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7688
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7689
		"asStripeClasses": [ 'odd', 'even' ],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7690
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7691
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7692
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7693
		 * Enable or disable automatic column width calculation. This can be disabled
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7694
		 * as an optimisation (it takes some time to calculate the widths) if the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7695
		 * tables widths are passed in using aoColumns.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7696
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7697
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7698
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7699
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7700
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7701
		 *    $(document).ready( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7702
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7703
		 *        "bAutoWidth": false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7704
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7705
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7706
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7707
		"bAutoWidth": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7708
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7709
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7710
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7711
		 * Deferred rendering can provide DataTables with a huge speed boost when you
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7712
		 * are using an Ajax or JS data source for the table. This option, when set to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7713
		 * true, will cause DataTables to defer the creation of the table elements for
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7714
		 * each row until they are needed for a draw - saving a significant amount of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7715
		 * time.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7716
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7717
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7718
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7719
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7720
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7721
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7722
		 *      var oTable = $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7723
		 *        "sAjaxSource": "sources/arrays.txt",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7724
		 *        "bDeferRender": true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7725
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7726
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7727
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7728
		"bDeferRender": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7729
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7730
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7731
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7732
		 * Replace a DataTable which matches the given selector and replace it with 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7733
		 * one which has the properties of the new initialisation object passed. If no
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7734
		 * table matches the selector, then the new DataTable will be constructed as
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7735
		 * per normal.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7736
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7737
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7738
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7739
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7740
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7741
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7742
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7743
		 *        "sScrollY": "200px",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7744
		 *        "bPaginate": false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7745
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7746
		 *      
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7747
		 *      // Some time later....
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7748
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7749
		 *        "bFilter": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7750
		 *        "bDestroy": true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7751
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7752
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7753
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7754
		"bDestroy": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7755
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7756
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7757
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7758
		 * Enable or disable filtering of data. Filtering in DataTables is "smart" in
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7759
		 * that it allows the end user to input multiple words (space separated) and
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7760
		 * will match a row containing those words, even if not in the order that was
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7761
		 * specified (this allow matching across multiple columns). Note that if you
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7762
		 * wish to use filtering in DataTables this must remain 'true' - to remove the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7763
		 * default filtering input box and retain filtering abilities, please use
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7764
		 * @ref{sDom}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7765
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7766
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7767
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7768
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7769
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7770
		 *    $(document).ready( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7771
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7772
		 *        "bFilter": false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7773
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7774
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7775
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7776
		"bFilter": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7777
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7778
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7779
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7780
		 * Enable or disable the table information display. This shows information 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7781
		 * about the data that is currently visible on the page, including information
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7782
		 * about filtered data if that action is being performed.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7783
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7784
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7785
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7786
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7787
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7788
		 *    $(document).ready( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7789
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7790
		 *        "bInfo": false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7791
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7792
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7793
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7794
		"bInfo": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7795
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7796
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7797
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7798
		 * Enable jQuery UI ThemeRoller support (required as ThemeRoller requires some
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7799
		 * slightly different and additional mark-up from what DataTables has
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7800
		 * traditionally used).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7801
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7802
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7803
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7804
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7805
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7806
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7807
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7808
		 *        "bJQueryUI": true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7809
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7810
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7811
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7812
		"bJQueryUI": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7813
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7814
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7815
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7816
		 * Allows the end user to select the size of a formatted page from a select
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7817
		 * menu (sizes are 10, 25, 50 and 100). Requires pagination (bPaginate).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7818
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7819
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7820
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7821
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7822
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7823
		 *    $(document).ready( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7824
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7825
		 *        "bLengthChange": false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7826
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7827
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7828
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7829
		"bLengthChange": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7830
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7831
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7832
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7833
		 * Enable or disable pagination.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7834
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7835
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7836
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7837
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7838
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7839
		 *    $(document).ready( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7840
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7841
		 *        "bPaginate": false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7842
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7843
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7844
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7845
		"bPaginate": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7846
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7847
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7848
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7849
		 * Enable or disable the display of a 'processing' indicator when the table is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7850
		 * being processed (e.g. a sort). This is particularly useful for tables with
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7851
		 * large amounts of data where it can take a noticeable amount of time to sort
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7852
		 * the entries.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7853
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7854
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7855
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7856
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7857
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7858
		 *    $(document).ready( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7859
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7860
		 *        "bProcessing": true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7861
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7862
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7863
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7864
		"bProcessing": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7865
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7866
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7867
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7868
		 * Retrieve the DataTables object for the given selector. Note that if the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7869
		 * table has already been initialised, this parameter will cause DataTables
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7870
		 * to simply return the object that has already been set up - it will not take
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7871
		 * account of any changes you might have made to the initialisation object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7872
		 * passed to DataTables (setting this parameter to true is an acknowledgement
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7873
		 * that you understand this). bDestroy can be used to reinitialise a table if
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7874
		 * you need.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7875
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7876
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7877
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7878
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7879
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7880
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7881
		 *      initTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7882
		 *      tableActions();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7883
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7884
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7885
		 *    function initTable ()
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7886
		 *    {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7887
		 *      return $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7888
		 *        "sScrollY": "200px",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7889
		 *        "bPaginate": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7890
		 *        "bRetrieve": true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7891
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7892
		 *    }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7893
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7894
		 *    function tableActions ()
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7895
		 *    {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7896
		 *      var oTable = initTable();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7897
		 *      // perform API operations with oTable 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7898
		 *    }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7899
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7900
		"bRetrieve": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7901
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7902
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7903
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7904
		 * Indicate if DataTables should be allowed to set the padding / margin
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7905
		 * etc for the scrolling header elements or not. Typically you will want
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7906
		 * this.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7907
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7908
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7909
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7910
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7911
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7912
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7913
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7914
		 *        "bScrollAutoCss": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7915
		 *        "sScrollY": "200px"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7916
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7917
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7918
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7919
		"bScrollAutoCss": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7920
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7921
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7922
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7923
		 * When vertical (y) scrolling is enabled, DataTables will force the height of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7924
		 * the table's viewport to the given height at all times (useful for layout).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7925
		 * However, this can look odd when filtering data down to a small data set,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7926
		 * and the footer is left "floating" further down. This parameter (when
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7927
		 * enabled) will cause DataTables to collapse the table's viewport down when
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7928
		 * the result set will fit within the given Y height.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7929
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7930
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7931
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7932
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7933
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7934
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7935
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7936
		 *        "sScrollY": "200",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7937
		 *        "bScrollCollapse": true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7938
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7939
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7940
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7941
		"bScrollCollapse": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7942
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7943
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7944
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7945
		 * Enable infinite scrolling for DataTables (to be used in combination with
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7946
		 * sScrollY). Infinite scrolling means that DataTables will continually load
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7947
		 * data as a user scrolls through a table, which is very useful for large
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7948
		 * dataset. This cannot be used with pagination, which is automatically
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7949
		 * disabled. Note - the Scroller extra for DataTables is recommended in
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7950
		 * in preference to this option.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7951
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7952
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7953
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7954
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7955
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7956
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7957
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7958
		 *        "bScrollInfinite": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7959
		 *        "bScrollCollapse": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7960
		 *        "sScrollY": "200px"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7961
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7962
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7963
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7964
		"bScrollInfinite": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7965
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7966
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7967
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7968
		 * Configure DataTables to use server-side processing. Note that the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7969
		 * sAjaxSource parameter must also be given in order to give DataTables a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7970
		 * source to obtain the required data for each draw.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7971
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7972
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7973
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7974
		 *  @dtopt Server-side
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7975
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7976
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7977
		 *    $(document).ready( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7978
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7979
		 *        "bServerSide": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7980
		 *        "sAjaxSource": "xhr.php"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7981
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7982
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7983
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7984
		"bServerSide": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7985
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7986
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7987
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7988
		 * Enable or disable sorting of columns. Sorting of individual columns can be
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7989
		 * disabled by the "bSortable" option for each column.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7990
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7991
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7992
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7993
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7994
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7995
		 *    $(document).ready( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7996
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7997
		 *        "bSort": false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7998
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  7999
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8000
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8001
		"bSort": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8002
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8003
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8004
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8005
		 * Allows control over whether DataTables should use the top (true) unique
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8006
		 * cell that is found for a single column, or the bottom (false - default).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8007
		 * This is useful when using complex headers.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8008
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8009
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8010
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8011
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8012
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8013
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8014
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8015
		 *        "bSortCellsTop": true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8016
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8017
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8018
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8019
		"bSortCellsTop": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8020
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8021
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8022
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8023
		 * Enable or disable the addition of the classes 'sorting_1', 'sorting_2' and
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8024
		 * 'sorting_3' to the columns which are currently being sorted on. This is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8025
		 * presented as a feature switch as it can increase processing time (while
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8026
		 * classes are removed and added) so for large data sets you might want to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8027
		 * turn this off.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8028
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8029
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8030
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8031
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8032
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8033
		 *    $(document).ready( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8034
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8035
		 *        "bSortClasses": false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8036
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8037
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8038
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8039
		"bSortClasses": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8040
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8041
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8042
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8043
		 * Enable or disable state saving. When enabled a cookie will be used to save
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8044
		 * table display information such as pagination information, display length,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8045
		 * filtering and sorting. As such when the end user reloads the page the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8046
		 * display display will match what thy had previously set up.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8047
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8048
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8049
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8050
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8051
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8052
		 *    $(document).ready( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8053
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8054
		 *        "bStateSave": true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8055
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8056
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8057
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8058
		"bStateSave": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8059
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8060
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8061
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8062
		 * Customise the cookie and / or the parameters being stored when using
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8063
		 * DataTables with state saving enabled. This function is called whenever
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8064
		 * the cookie is modified, and it expects a fully formed cookie string to be
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8065
		 * returned. Note that the data object passed in is a Javascript object which
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8066
		 * must be converted to a string (JSON.stringify for example).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8067
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8068
		 *  @param {string} sName Name of the cookie defined by DataTables
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8069
		 *  @param {object} oData Data to be stored in the cookie
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8070
		 *  @param {string} sExpires Cookie expires string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8071
		 *  @param {string} sPath Path of the cookie to set
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8072
		 *  @returns {string} Cookie formatted string (which should be encoded by
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8073
		 *    using encodeURIComponent())
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8074
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8075
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8076
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8077
		 *    $(document).ready( function () {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8078
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8079
		 *        "fnCookieCallback": function (sName, oData, sExpires, sPath) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8080
		 *          // Customise oData or sName or whatever else here
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8081
		 *          return sName + "="+JSON.stringify(oData)+"; expires=" + sExpires +"; path=" + sPath;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8082
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8083
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8084
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8085
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8086
		"fnCookieCallback": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8087
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8088
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8089
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8090
		 * This function is called when a TR element is created (and all TD child
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8091
		 * elements have been inserted), or registered if using a DOM source, allowing
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8092
		 * manipulation of the TR element (adding classes etc).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8093
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8094
		 *  @param {node} nRow "TR" element for the current row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8095
		 *  @param {array} aData Raw data array for this row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8096
		 *  @param {int} iDataIndex The index of this row in aoData
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8097
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8098
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8099
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8100
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8101
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8102
		 *        "fnCreatedRow": function( nRow, aData, iDataIndex ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8103
		 *          // Bold the grade for all 'A' grade browsers
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8104
		 *          if ( aData[4] == "A" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8105
		 *          {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8106
		 *            $('td:eq(4)', nRow).html( '<b>A</b>' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8107
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8108
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8109
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8110
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8111
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8112
		"fnCreatedRow": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8113
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8114
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8115
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8116
		 * This function is called on every 'draw' event, and allows you to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8117
		 * dynamically modify any aspect you want about the created DOM.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8118
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8119
		 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8120
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8121
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8122
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8123
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8124
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8125
		 *        "fnDrawCallback": function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8126
		 *          alert( 'DataTables has redrawn the table' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8127
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8128
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8129
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8130
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8131
		"fnDrawCallback": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8132
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8133
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8134
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8135
		 * Identical to fnHeaderCallback() but for the table footer this function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8136
		 * allows you to modify the table footer on every 'draw' even.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8137
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8138
		 *  @param {node} nFoot "TR" element for the footer
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8139
		 *  @param {array} aData Full table data (as derived from the original HTML)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8140
		 *  @param {int} iStart Index for the current display starting point in the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8141
		 *    display array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8142
		 *  @param {int} iEnd Index for the current display ending point in the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8143
		 *    display array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8144
		 *  @param {array int} aiDisplay Index array to translate the visual position
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8145
		 *    to the full data array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8146
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8147
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8148
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8149
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8150
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8151
		 *        "fnFooterCallback": function( nFoot, aData, iStart, iEnd, aiDisplay ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8152
		 *          nFoot.getElementsByTagName('th')[0].innerHTML = "Starting index is "+iStart;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8153
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8154
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8155
		 *    } )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8156
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8157
		"fnFooterCallback": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8158
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8159
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8160
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8161
		 * When rendering large numbers in the information element for the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8162
		 * (i.e. "Showing 1 to 10 of 57 entries") DataTables will render large numbers
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8163
		 * to have a comma separator for the 'thousands' units (e.g. 1 million is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8164
		 * rendered as "1,000,000") to help readability for the end user. This
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8165
		 * function will override the default method DataTables uses.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8166
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8167
		 *  @member
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8168
		 *  @param {int} iIn number to be formatted
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8169
		 *  @returns {string} formatted string for DataTables to show the number
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8170
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8171
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8172
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8173
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8174
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8175
		 *        "fnFormatNumber": function ( iIn ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8176
		 *          if ( iIn &lt; 1000 ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8177
		 *            return iIn;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8178
		 *          } else {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8179
		 *            var 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8180
		 *              s=(iIn+""), 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8181
		 *              a=s.split(""), out="", 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8182
		 *              iLen=s.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8183
		 *            
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8184
		 *            for ( var i=0 ; i&lt;iLen ; i++ ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8185
		 *              if ( i%3 === 0 &amp;&amp; i !== 0 ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8186
		 *                out = "'"+out;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8187
		 *              }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8188
		 *              out = a[iLen-i-1]+out;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8189
		 *            }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8190
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8191
		 *          return out;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8192
		 *        };
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8193
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8194
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8195
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8196
		"fnFormatNumber": function ( iIn ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8197
			if ( iIn < 1000 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8198
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8199
				// A small optimisation for what is likely to be the majority of use cases
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8200
				return iIn;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8201
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8202
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8203
			var s=(iIn+""), a=s.split(""), out="", iLen=s.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8204
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8205
			for ( var i=0 ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8206
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8207
				if ( i%3 === 0 && i !== 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8208
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8209
					out = this.oLanguage.sInfoThousands+out;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8210
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8211
				out = a[iLen-i-1]+out;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8212
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8213
			return out;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8214
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8215
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8216
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8217
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8218
		 * This function is called on every 'draw' event, and allows you to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8219
		 * dynamically modify the header row. This can be used to calculate and
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8220
		 * display useful information about the table.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8221
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8222
		 *  @param {node} nHead "TR" element for the header
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8223
		 *  @param {array} aData Full table data (as derived from the original HTML)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8224
		 *  @param {int} iStart Index for the current display starting point in the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8225
		 *    display array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8226
		 *  @param {int} iEnd Index for the current display ending point in the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8227
		 *    display array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8228
		 *  @param {array int} aiDisplay Index array to translate the visual position
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8229
		 *    to the full data array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8230
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8231
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8232
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8233
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8234
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8235
		 *        "fnHeaderCallback": function( nHead, aData, iStart, iEnd, aiDisplay ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8236
		 *          nHead.getElementsByTagName('th')[0].innerHTML = "Displaying "+(iEnd-iStart)+" records";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8237
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8238
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8239
		 *    } )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8240
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8241
		"fnHeaderCallback": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8242
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8243
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8244
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8245
		 * The information element can be used to convey information about the current
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8246
		 * state of the table. Although the internationalisation options presented by
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8247
		 * DataTables are quite capable of dealing with most customisations, there may
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8248
		 * be times where you wish to customise the string further. This callback
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8249
		 * allows you to do exactly that.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8250
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8251
		 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8252
		 *  @param {int} iStart Starting position in data for the draw
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8253
		 *  @param {int} iEnd End position in data for the draw
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8254
		 *  @param {int} iMax Total number of rows in the table (regardless of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8255
		 *    filtering)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8256
		 *  @param {int} iTotal Total number of rows in the data set, after filtering
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8257
		 *  @param {string} sPre The string that DataTables has formatted using it's
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8258
		 *    own rules
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8259
		 *  @returns {string} The string to be displayed in the information element.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8260
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8261
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8262
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8263
		 *    $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8264
		 *      "fnInfoCallback": function( oSettings, iStart, iEnd, iMax, iTotal, sPre ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8265
		 *        return iStart +" to "+ iEnd;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8266
		 *      }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8267
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8268
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8269
		"fnInfoCallback": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8270
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8271
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8272
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8273
		 * Called when the table has been initialised. Normally DataTables will
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8274
		 * initialise sequentially and there will be no need for this function,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8275
		 * however, this does not hold true when using external language information
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8276
		 * since that is obtained using an async XHR call.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8277
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8278
		 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8279
		 *  @param {object} json The JSON object request from the server - only
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8280
		 *    present if client-side Ajax sourced data is used
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8281
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8282
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8283
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8284
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8285
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8286
		 *        "fnInitComplete": function(oSettings, json) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8287
		 *          alert( 'DataTables has finished its initialisation.' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8288
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8289
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8290
		 *    } )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8291
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8292
		"fnInitComplete": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8293
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8294
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8295
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8296
		 * Called at the very start of each table draw and can be used to cancel the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8297
		 * draw by returning false, any other return (including undefined) results in
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8298
		 * the full draw occurring).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8299
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8300
		 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8301
		 *  @returns {boolean} False will cancel the draw, anything else (including no
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8302
		 *    return) will allow it to complete.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8303
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8304
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8305
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8306
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8307
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8308
		 *        "fnPreDrawCallback": function( oSettings ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8309
		 *          if ( $('#test').val() == 1 ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8310
		 *            return false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8311
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8312
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8313
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8314
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8315
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8316
		"fnPreDrawCallback": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8317
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8318
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8319
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8320
		 * This function allows you to 'post process' each row after it have been
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8321
		 * generated for each table draw, but before it is rendered on screen. This
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8322
		 * function might be used for setting the row class name etc.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8323
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8324
		 *  @param {node} nRow "TR" element for the current row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8325
		 *  @param {array} aData Raw data array for this row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8326
		 *  @param {int} iDisplayIndex The display index for the current table draw
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8327
		 *  @param {int} iDisplayIndexFull The index of the data in the full list of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8328
		 *    rows (after filtering)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8329
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8330
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8331
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8332
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8333
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8334
		 *        "fnRowCallback": function( nRow, aData, iDisplayIndex, iDisplayIndexFull ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8335
		 *          // Bold the grade for all 'A' grade browsers
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8336
		 *          if ( aData[4] == "A" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8337
		 *          {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8338
		 *            $('td:eq(4)', nRow).html( '<b>A</b>' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8339
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8340
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8341
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8342
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8343
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8344
		"fnRowCallback": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8345
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8346
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8347
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8348
		 * This parameter allows you to override the default function which obtains
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8349
		 * the data from the server ($.getJSON) so something more suitable for your
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8350
		 * application. For example you could use POST data, or pull information from
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8351
		 * a Gears or AIR database.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8352
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8353
		 *  @member
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8354
		 *  @param {string} sSource HTTP source to obtain the data from (sAjaxSource)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8355
		 *  @param {array} aoData A key/value pair object containing the data to send
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8356
		 *    to the server
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8357
		 *  @param {function} fnCallback to be called on completion of the data get
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8358
		 *    process that will draw the data on the page.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8359
		 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8360
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8361
		 *  @dtopt Server-side
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8362
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8363
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8364
		 *    // POST data to server
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8365
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8366
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8367
		 *        "bProcessing": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8368
		 *        "bServerSide": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8369
		 *        "sAjaxSource": "xhr.php",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8370
		 *        "fnServerData": function ( sSource, aoData, fnCallback ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8371
		 *          $.ajax( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8372
		 *            "dataType": 'json', 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8373
		 *            "type": "POST", 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8374
		 *            "url": sSource, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8375
		 *            "data": aoData, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8376
		 *            "success": fnCallback
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8377
		 *          } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8378
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8379
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8380
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8381
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8382
		"fnServerData": function ( sUrl, aoData, fnCallback, oSettings ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8383
			oSettings.jqXHR = $.ajax( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8384
				"url":  sUrl,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8385
				"data": aoData,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8386
				"success": function (json) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8387
					$(oSettings.oInstance).trigger('xhr', oSettings);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8388
					fnCallback( json );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8389
				},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8390
				"dataType": "json",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8391
				"cache": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8392
				"type": oSettings.sServerMethod,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8393
				"error": function (xhr, error, thrown) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8394
					if ( error == "parsererror" ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8395
						alert( "DataTables warning: JSON data from server could not be parsed. "+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8396
							"This is caused by a JSON formatting error." );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8397
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8398
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8399
			} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8400
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8401
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8402
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8403
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8404
		 * It is often useful to send extra data to the server when making an Ajax
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8405
		 * request - for example custom filtering information, and this callback
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8406
		 * function makes it trivial to send extra information to the server. The
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8407
		 * passed in parameter is the data set that has been constructed by
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8408
		 * DataTables, and you can add to this or modify it as you require.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8409
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8410
		 *  @param {array} aoData Data array (array of objects which are name/value
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8411
		 *    pairs) that has been constructed by DataTables and will be sent to the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8412
		 *    server. In the case of Ajax sourced data with server-side processing
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8413
		 *    this will be an empty array, for server-side processing there will be a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8414
		 *    significant number of parameters!
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8415
		 *  @returns {undefined} Ensure that you modify the aoData array passed in,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8416
		 *    as this is passed by reference.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8417
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8418
		 *  @dtopt Server-side
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8419
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8420
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8421
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8422
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8423
		 *        "bProcessing": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8424
		 *        "bServerSide": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8425
		 *        "sAjaxSource": "scripts/server_processing.php",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8426
		 *        "fnServerParams": function ( aoData ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8427
		 *          aoData.push( { "name": "more_data", "value": "my_value" } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8428
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8429
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8430
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8431
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8432
		"fnServerParams": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8433
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8434
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8435
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8436
		 * Load the table state. With this function you can define from where, and how, the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8437
		 * state of a table is loaded. By default DataTables will load from its state saving
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8438
		 * cookie, but you might wish to use local storage (HTML5) or a server-side database.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8439
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8440
		 *  @member
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8441
		 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8442
		 *  @return {object} The DataTables state object to be loaded
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8443
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8444
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8445
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8446
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8447
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8448
		 *        "bStateSave": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8449
		 *        "fnStateSave": function (oSettings, oData) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8450
		 *          var o;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8451
		 *          
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8452
		 *          // Send an Ajax request to the server to get the data. Note that
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8453
		 *          // this is a synchronous request.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8454
		 *          $.ajax( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8455
		 *            "url": "/state_load",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8456
		 *            "async": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8457
		 *            "dataType": "json",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8458
		 *            "success": function (json) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8459
		 *              o = json;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8460
		 *            }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8461
		 *          } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8462
		 *          
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8463
		 *          return o;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8464
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8465
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8466
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8467
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8468
		"fnStateLoad": function ( oSettings ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8469
			var sData = this.oApi._fnReadCookie( oSettings.sCookiePrefix+oSettings.sInstance );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8470
			var oData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8471
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8472
			try {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8473
				oData = (typeof $.parseJSON === 'function') ? 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8474
					$.parseJSON(sData) : eval( '('+sData+')' );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8475
			} catch (e) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8476
				oData = null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8477
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8478
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8479
			return oData;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8480
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8481
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8482
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8483
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8484
		 * Callback which allows modification of the saved state prior to loading that state.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8485
		 * This callback is called when the table is loading state from the stored data, but
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8486
		 * prior to the settings object being modified by the saved state. Note that for 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8487
		 * plug-in authors, you should use the 'stateLoadParams' event to load parameters for 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8488
		 * a plug-in.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8489
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8490
		 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8491
		 *  @param {object} oData The state object that is to be loaded
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8492
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8493
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8494
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8495
		 *    // Remove a saved filter, so filtering is never loaded
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8496
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8497
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8498
		 *        "bStateSave": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8499
		 *        "fnStateLoadParams": function (oSettings, oData) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8500
		 *          oData.oFilter.sSearch = "";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8501
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8502
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8503
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8504
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8505
		 *    // Disallow state loading by returning false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8506
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8507
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8508
		 *        "bStateSave": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8509
		 *        "fnStateLoadParams": function (oSettings, oData) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8510
		 *          return false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8511
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8512
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8513
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8514
		"fnStateLoadParams": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8515
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8516
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8517
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8518
		 * Callback that is called when the state has been loaded from the state saving method
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8519
		 * and the DataTables settings object has been modified as a result of the loaded state.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8520
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8521
		 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8522
		 *  @param {object} oData The state object that was loaded
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8523
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8524
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8525
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8526
		 *    // Show an alert with the filtering value that was saved
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8527
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8528
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8529
		 *        "bStateSave": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8530
		 *        "fnStateLoaded": function (oSettings, oData) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8531
		 *          alert( 'Saved filter was: '+oData.oFilter.sSearch );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8532
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8533
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8534
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8535
		"fnStateLoaded": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8536
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8537
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8538
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8539
		 * Save the table state. This function allows you to define where and how the state
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8540
		 * information for the table is stored - by default it will use a cookie, but you
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8541
		 * might want to use local storage (HTML5) or a server-side database.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8542
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8543
		 *  @member
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8544
		 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8545
		 *  @param {object} oData The state object to be saved
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8546
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8547
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8548
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8549
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8550
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8551
		 *        "bStateSave": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8552
		 *        "fnStateSave": function (oSettings, oData) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8553
		 *          // Send an Ajax request to the server with the state object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8554
		 *          $.ajax( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8555
		 *            "url": "/state_save",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8556
		 *            "data": oData,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8557
		 *            "dataType": "json",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8558
		 *            "method": "POST"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8559
		 *            "success": function () {}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8560
		 *          } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8561
		 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8562
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8563
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8564
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8565
		"fnStateSave": function ( oSettings, oData ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8566
			this.oApi._fnCreateCookie( 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8567
				oSettings.sCookiePrefix+oSettings.sInstance, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8568
				this.oApi._fnJsonString(oData), 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8569
				oSettings.iCookieDuration, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8570
				oSettings.sCookiePrefix, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8571
				oSettings.fnCookieCallback
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8572
			);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8573
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8574
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8575
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8576
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8577
		 * Callback which allows modification of the state to be saved. Called when the table 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8578
		 * has changed state a new state save is required. This method allows modification of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8579
		 * the state saving object prior to actually doing the save, including addition or 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8580
		 * other state properties or modification. Note that for plug-in authors, you should 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8581
		 * use the 'stateSaveParams' event to save parameters for a plug-in.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8582
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8583
		 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8584
		 *  @param {object} oData The state object to be saved
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8585
		 *  @dtopt Callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8586
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8587
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8588
		 *    // Remove a saved filter, so filtering is never saved
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8589
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8590
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8591
		 *        "bStateSave": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8592
		 *        "fnStateLoadParams": function (oSettings, oData) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8593
		 *          oData.oFilter.sSearch = "";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8594
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8595
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8596
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8597
		"fnStateSaveParams": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8598
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8599
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8600
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8601
		 * Duration of the cookie which is used for storing session information. This
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8602
		 * value is given in seconds.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8603
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8604
		 *  @default 7200 <i>(2 hours)</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8605
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8606
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8607
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8608
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8609
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8610
		 *        "iCookieDuration": 60*60*24 // 1 day
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8611
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8612
		 *    } )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8613
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8614
		"iCookieDuration": 7200,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8615
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8616
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8617
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8618
		 * When enabled DataTables will not make a request to the server for the first
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8619
		 * page draw - rather it will use the data already on the page (no sorting etc
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8620
		 * will be applied to it), thus saving on an XHR at load time. iDeferLoading
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8621
		 * is used to indicate that deferred loading is required, but it is also used
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8622
		 * to tell DataTables how many records there are in the full table (allowing
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8623
		 * the information element and pagination to be displayed correctly).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8624
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8625
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8626
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8627
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8628
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8629
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8630
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8631
		 *        "bServerSide": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8632
		 *        "sAjaxSource": "scripts/server_processing.php",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8633
		 *        "iDeferLoading": 57
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8634
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8635
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8636
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8637
		"iDeferLoading": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8638
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8639
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8640
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8641
		 * Number of rows to display on a single page when using pagination. If
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8642
		 * feature enabled (bLengthChange) then the end user will be able to override
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8643
		 * this to a custom setting using a pop-up menu.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8644
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8645
		 *  @default 10
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8646
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8647
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8648
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8649
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8650
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8651
		 *        "iDisplayLength": 50
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8652
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8653
		 *    } )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8654
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8655
		"iDisplayLength": 10,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8656
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8657
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8658
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8659
		 * Define the starting point for data display when using DataTables with
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8660
		 * pagination. Note that this parameter is the number of records, rather than
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8661
		 * the page number, so if you have 10 records per page and want to start on
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8662
		 * the third page, it should be "20".
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8663
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8664
		 *  @default 0
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8665
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8666
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8667
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8668
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8669
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8670
		 *        "iDisplayStart": 20
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8671
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8672
		 *    } )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8673
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8674
		"iDisplayStart": 0,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8675
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8676
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8677
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8678
		 * The scroll gap is the amount of scrolling that is left to go before
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8679
		 * DataTables will load the next 'page' of data automatically. You typically
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8680
		 * want a gap which is big enough that the scrolling will be smooth for the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8681
		 * user, while not so large that it will load more data than need.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8682
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8683
		 *  @default 100
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8684
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8685
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8686
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8687
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8688
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8689
		 *        "bScrollInfinite": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8690
		 *        "bScrollCollapse": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8691
		 *        "sScrollY": "200px",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8692
		 *        "iScrollLoadGap": 50
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8693
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8694
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8695
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8696
		"iScrollLoadGap": 100,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8697
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8698
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8699
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8700
		 * By default DataTables allows keyboard navigation of the table (sorting, paging,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8701
		 * and filtering) by adding a tabindex attribute to the required elements. This
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8702
		 * allows you to tab through the controls and press the enter key to activate them.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8703
		 * The tabindex is default 0, meaning that the tab follows the flow of the document.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8704
		 * You can overrule this using this parameter if you wish. Use a value of -1 to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8705
		 * disable built-in keyboard navigation.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8706
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8707
		 *  @default 0
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8708
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8709
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8710
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8711
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8712
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8713
		 *        "iTabIndex": 1
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8714
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8715
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8716
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8717
		"iTabIndex": 0,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8718
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8719
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8720
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8721
		 * All strings that DataTables uses in the user interface that it creates
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8722
		 * are defined in this object, allowing you to modified them individually or
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8723
		 * completely replace them all as required.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8724
		 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8725
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8726
		"oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8727
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8728
			 * Strings that are used for WAI-ARIA labels and controls only (these are not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8729
			 * actually visible on the page, but will be read by screenreaders, and thus
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8730
			 * must be internationalised as well).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8731
			 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8732
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8733
			"oAria": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8734
				/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8735
				 * ARIA label that is added to the table headers when the column may be
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8736
				 * sorted ascending by activing the column (click or return when focused).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8737
				 * Note that the column header is prefixed to this string.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8738
				 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8739
				 *  @default : activate to sort column ascending
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8740
				 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8741
				 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8742
				 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8743
				 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8744
				 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8745
				 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8746
				 *          "oAria": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8747
				 *            "sSortAscending": " - click/return to sort ascending"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8748
				 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8749
				 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8750
				 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8751
				 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8752
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8753
				"sSortAscending": ": activate to sort column ascending",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8754
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8755
				/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8756
				 * ARIA label that is added to the table headers when the column may be
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8757
				 * sorted descending by activing the column (click or return when focused).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8758
				 * Note that the column header is prefixed to this string.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8759
				 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8760
				 *  @default : activate to sort column ascending
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8761
				 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8762
				 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8763
				 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8764
				 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8765
				 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8766
				 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8767
				 *          "oAria": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8768
				 *            "sSortDescending": " - click/return to sort descending"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8769
				 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8770
				 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8771
				 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8772
				 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8773
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8774
				"sSortDescending": ": activate to sort column descending"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8775
			},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8776
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8777
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8778
			 * Pagination string used by DataTables for the two built-in pagination
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8779
			 * control types ("two_button" and "full_numbers")
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8780
			 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8781
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8782
			"oPaginate": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8783
				/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8784
				 * Text to use when using the 'full_numbers' type of pagination for the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8785
				 * button to take the user to the first page.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8786
				 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8787
				 *  @default First
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8788
				 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8789
				 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8790
				 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8791
				 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8792
				 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8793
				 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8794
				 *          "oPaginate": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8795
				 *            "sFirst": "First page"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8796
				 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8797
				 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8798
				 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8799
				 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8800
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8801
				"sFirst": "First",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8802
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8803
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8804
				/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8805
				 * Text to use when using the 'full_numbers' type of pagination for the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8806
				 * button to take the user to the last page.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8807
				 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8808
				 *  @default Last
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8809
				 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8810
				 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8811
				 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8812
				 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8813
				 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8814
				 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8815
				 *          "oPaginate": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8816
				 *            "sLast": "Last page"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8817
				 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8818
				 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8819
				 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8820
				 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8821
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8822
				"sLast": "Last",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8823
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8824
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8825
				/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8826
				 * Text to use when using the 'full_numbers' type of pagination for the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8827
				 * button to take the user to the next page.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8828
				 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8829
				 *  @default Next
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8830
				 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8831
				 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8832
				 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8833
				 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8834
				 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8835
				 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8836
				 *          "oPaginate": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8837
				 *            "sNext": "Next page"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8838
				 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8839
				 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8840
				 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8841
				 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8842
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8843
				"sNext": "Next",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8844
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8845
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8846
				/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8847
				 * Text to use when using the 'full_numbers' type of pagination for the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8848
				 * button to take the user to the previous page.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8849
				 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8850
				 *  @default Previous
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8851
				 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8852
				 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8853
				 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8854
				 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8855
				 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8856
				 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8857
				 *          "oPaginate": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8858
				 *            "sPrevious": "Previous page"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8859
				 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8860
				 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8861
				 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8862
				 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8863
				 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8864
				"sPrevious": "Previous"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8865
			},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8866
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8867
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8868
			 * This string is shown in preference to sZeroRecords when the table is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8869
			 * empty of data (regardless of filtering). Note that this is an optional
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8870
			 * parameter - if it is not given, the value of sZeroRecords will be used
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8871
			 * instead (either the default or given value).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8872
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8873
			 *  @default No data available in table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8874
			 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8875
			 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8876
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8877
			 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8878
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8879
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8880
			 *          "sEmptyTable": "No data available in table"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8881
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8882
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8883
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8884
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8885
			"sEmptyTable": "No data available in table",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8886
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8887
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8888
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8889
			 * This string gives information to the end user about the information that 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8890
			 * is current on display on the page. The _START_, _END_ and _TOTAL_ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8891
			 * variables are all dynamically replaced as the table display updates, and 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8892
			 * can be freely moved or removed as the language requirements change.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8893
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8894
			 *  @default Showing _START_ to _END_ of _TOTAL_ entries
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8895
			 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8896
			 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8897
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8898
			 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8899
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8900
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8901
			 *          "sInfo": "Got a total of _TOTAL_ entries to show (_START_ to _END_)"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8902
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8903
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8904
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8905
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8906
			"sInfo": "Showing _START_ to _END_ of _TOTAL_ entries",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8907
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8908
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8909
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8910
			 * Display information string for when the table is empty. Typically the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8911
			 * format of this string should match sInfo.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8912
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8913
			 *  @default Showing 0 to 0 of 0 entries
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8914
			 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8915
			 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8916
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8917
			 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8918
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8919
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8920
			 *          "sInfoEmpty": "No entries to show"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8921
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8922
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8923
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8924
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8925
			"sInfoEmpty": "Showing 0 to 0 of 0 entries",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8926
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8927
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8928
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8929
			 * When a user filters the information in a table, this string is appended 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8930
			 * to the information (sInfo) to give an idea of how strong the filtering 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8931
			 * is. The variable _MAX_ is dynamically updated.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8932
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8933
			 *  @default (filtered from _MAX_ total entries)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8934
			 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8935
			 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8936
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8937
			 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8938
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8939
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8940
			 *          "sInfoFiltered": " - filtering from _MAX_ records"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8941
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8942
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8943
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8944
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8945
			"sInfoFiltered": "(filtered from _MAX_ total entries)",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8946
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8947
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8948
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8949
			 * If can be useful to append extra information to the info string at times,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8950
			 * and this variable does exactly that. This information will be appended to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8951
			 * the sInfo (sInfoEmpty and sInfoFiltered in whatever combination they are
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8952
			 * being used) at all times.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8953
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8954
			 *  @default <i>Empty string</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8955
			 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8956
			 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8957
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8958
			 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8959
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8960
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8961
			 *          "sInfoPostFix": "All records shown are derived from real information."
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8962
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8963
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8964
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8965
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8966
			"sInfoPostFix": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8967
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8968
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8969
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8970
			 * DataTables has a build in number formatter (fnFormatNumber) which is used
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8971
			 * to format large numbers that are used in the table information. By
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8972
			 * default a comma is used, but this can be trivially changed to any
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8973
			 * character you wish with this parameter.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8974
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8975
			 *  @default ,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8976
			 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8977
			 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8978
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8979
			 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8980
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8981
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8982
			 *          "sInfoThousands": "'"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8983
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8984
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8985
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8986
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8987
			"sInfoThousands": ",",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8988
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8989
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8990
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8991
			 * Detail the action that will be taken when the drop down menu for the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8992
			 * pagination length option is changed. The '_MENU_' variable is replaced
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8993
			 * with a default select list of 10, 25, 50 and 100, and can be replaced
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8994
			 * with a custom select box if required.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8995
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8996
			 *  @default Show _MENU_ entries
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8997
			 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8998
			 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  8999
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9000
			 *    // Language change only
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9001
			 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9002
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9003
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9004
			 *          "sLengthMenu": "Display _MENU_ records"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9005
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9006
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9007
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9008
			 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9009
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9010
			 *    // Language and options change
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9011
			 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9012
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9013
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9014
			 *          "sLengthMenu": 'Display <select>'+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9015
			 *            '<option value="10">10</option>'+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9016
			 *            '<option value="20">20</option>'+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9017
			 *            '<option value="30">30</option>'+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9018
			 *            '<option value="40">40</option>'+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9019
			 *            '<option value="50">50</option>'+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9020
			 *            '<option value="-1">All</option>'+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9021
			 *            '</select> records'
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9022
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9023
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9024
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9025
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9026
			"sLengthMenu": "Show _MENU_ entries",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9027
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9028
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9029
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9030
			 * When using Ajax sourced data and during the first draw when DataTables is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9031
			 * gathering the data, this message is shown in an empty row in the table to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9032
			 * indicate to the end user the the data is being loaded. Note that this
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9033
			 * parameter is not used when loading data by server-side processing, just
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9034
			 * Ajax sourced data with client-side processing.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9035
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9036
			 *  @default Loading...
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9037
			 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9038
			 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9039
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9040
			 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9041
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9042
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9043
			 *          "sLoadingRecords": "Please wait - loading..."
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9044
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9045
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9046
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9047
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9048
			"sLoadingRecords": "Loading...",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9049
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9050
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9051
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9052
			 * Text which is displayed when the table is processing a user action
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9053
			 * (usually a sort command or similar).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9054
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9055
			 *  @default Processing...
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9056
			 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9057
			 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9058
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9059
			 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9060
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9061
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9062
			 *          "sProcessing": "DataTables is currently busy"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9063
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9064
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9065
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9066
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9067
			"sProcessing": "Processing...",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9068
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9069
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9070
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9071
			 * Details the actions that will be taken when the user types into the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9072
			 * filtering input text box. The variable "_INPUT_", if used in the string,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9073
			 * is replaced with the HTML text box for the filtering input allowing
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9074
			 * control over where it appears in the string. If "_INPUT_" is not given
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9075
			 * then the input box is appended to the string automatically.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9076
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9077
			 *  @default Search:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9078
			 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9079
			 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9080
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9081
			 *    // Input text box will be appended at the end automatically
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9082
			 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9083
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9084
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9085
			 *          "sSearch": "Filter records:"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9086
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9087
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9088
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9089
			 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9090
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9091
			 *    // Specify where the filter should appear
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9092
			 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9093
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9094
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9095
			 *          "sSearch": "Apply filter _INPUT_ to table"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9096
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9097
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9098
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9099
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9100
			"sSearch": "Search:",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9101
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9102
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9103
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9104
			 * All of the language information can be stored in a file on the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9105
			 * server-side, which DataTables will look up if this parameter is passed.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9106
			 * It must store the URL of the language file, which is in a JSON format,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9107
			 * and the object has the same properties as the oLanguage object in the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9108
			 * initialiser object (i.e. the above parameters). Please refer to one of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9109
			 * the example language files to see how this works in action.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9110
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9111
			 *  @default <i>Empty string - i.e. disabled</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9112
			 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9113
			 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9114
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9115
			 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9116
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9117
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9118
			 *          "sUrl": "http://www.sprymedia.co.uk/dataTables/lang.txt"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9119
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9120
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9121
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9122
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9123
			"sUrl": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9124
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9125
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9126
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9127
			 * Text shown inside the table records when the is no information to be
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9128
			 * displayed after filtering. sEmptyTable is shown when there is simply no
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9129
			 * information in the table at all (regardless of filtering).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9130
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9131
			 *  @default No matching records found
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9132
			 *  @dtopt Language
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9133
			 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9134
			 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9135
			 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9136
			 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9137
			 *        "oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9138
			 *          "sZeroRecords": "No records to display"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9139
			 *        }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9140
			 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9141
			 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9142
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9143
			"sZeroRecords": "No matching records found"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9144
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9145
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9146
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9147
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9148
		 * This parameter allows you to have define the global filtering state at
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9149
		 * initialisation time. As an object the "sSearch" parameter must be
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9150
		 * defined, but all other parameters are optional. When "bRegex" is true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9151
		 * the search string will be treated as a regular expression, when false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9152
		 * (default) it will be treated as a straight string. When "bSmart"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9153
		 * DataTables will use it's smart filtering methods (to word match at
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9154
		 * any point in the data), when false this will not be done.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9155
		 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9156
		 *  @extends DataTable.models.oSearch
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9157
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9158
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9159
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9160
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9161
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9162
		 *        "oSearch": {"sSearch": "Initial search"}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9163
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9164
		 *    } )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9165
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9166
		"oSearch": $.extend( {}, DataTable.models.oSearch ),
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9167
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9168
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9169
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9170
		 * By default DataTables will look for the property 'aaData' when obtaining
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9171
		 * data from an Ajax source or for server-side processing - this parameter
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9172
		 * allows that property to be changed. You can use Javascript dotted object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9173
		 * notation to get a data source for multiple levels of nesting.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9174
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9175
		 *  @default aaData
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9176
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9177
		 *  @dtopt Server-side
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9178
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9179
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9180
		 *    // Get data from { "data": [...] }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9181
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9182
		 *      var oTable = $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9183
		 *        "sAjaxSource": "sources/data.txt",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9184
		 *        "sAjaxDataProp": "data"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9185
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9186
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9187
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9188
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9189
		 *    // Get data from { "data": { "inner": [...] } }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9190
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9191
		 *      var oTable = $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9192
		 *        "sAjaxSource": "sources/data.txt",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9193
		 *        "sAjaxDataProp": "data.inner"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9194
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9195
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9196
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9197
		"sAjaxDataProp": "aaData",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9198
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9199
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9200
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9201
		 * You can instruct DataTables to load data from an external source using this
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9202
		 * parameter (use aData if you want to pass data in you already have). Simply
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9203
		 * provide a url a JSON object can be obtained from. This object must include
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9204
		 * the parameter 'aaData' which is the data source for the table.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9205
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9206
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9207
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9208
		 *  @dtopt Server-side
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9209
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9210
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9211
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9212
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9213
		 *        "sAjaxSource": "http://www.sprymedia.co.uk/dataTables/json.php"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9214
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9215
		 *    } )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9216
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9217
		"sAjaxSource": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9218
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9219
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9220
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9221
		 * This parameter can be used to override the default prefix that DataTables
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9222
		 * assigns to a cookie when state saving is enabled.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9223
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9224
		 *  @default SpryMedia_DataTables_
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9225
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9226
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9227
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9228
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9229
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9230
		 *        "sCookiePrefix": "my_datatable_",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9231
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9232
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9233
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9234
		"sCookiePrefix": "SpryMedia_DataTables_",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9235
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9236
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9237
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9238
		 * This initialisation variable allows you to specify exactly where in the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9239
		 * DOM you want DataTables to inject the various controls it adds to the page
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9240
		 * (for example you might want the pagination controls at the top of the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9241
		 * table). DIV elements (with or without a custom class) can also be added to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9242
		 * aid styling. The follow syntax is used:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9243
		 *   <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9244
		 *     <li>The following options are allowed:	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9245
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9246
		 *         <li>'l' - Length changing</li
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9247
		 *         <li>'f' - Filtering input</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9248
		 *         <li>'t' - The table!</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9249
		 *         <li>'i' - Information</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9250
		 *         <li>'p' - Pagination</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9251
		 *         <li>'r' - pRocessing</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9252
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9253
		 *     </li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9254
		 *     <li>The following constants are allowed:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9255
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9256
		 *         <li>'H' - jQueryUI theme "header" classes ('fg-toolbar ui-widget-header ui-corner-tl ui-corner-tr ui-helper-clearfix')</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9257
		 *         <li>'F' - jQueryUI theme "footer" classes ('fg-toolbar ui-widget-header ui-corner-bl ui-corner-br ui-helper-clearfix')</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9258
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9259
		 *     </li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9260
		 *     <li>The following syntax is expected:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9261
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9262
		 *         <li>'&lt;' and '&gt;' - div elements</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9263
		 *         <li>'&lt;"class" and '&gt;' - div with a class</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9264
		 *         <li>'&lt;"#id" and '&gt;' - div with an ID</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9265
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9266
		 *     </li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9267
		 *     <li>Examples:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9268
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9269
		 *         <li>'&lt;"wrapper"flipt&gt;'</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9270
		 *         <li>'&lt;lf&lt;t&gt;ip&gt;'</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9271
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9272
		 *     </li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9273
		 *   </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9274
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9275
		 *  @default lfrtip <i>(when bJQueryUI is false)</i> <b>or</b> 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9276
		 *    <"H"lfr>t<"F"ip> <i>(when bJQueryUI is true)</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9277
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9278
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9279
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9280
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9281
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9282
		 *        "sDom": '&lt;"top"i&gt;rt&lt;"bottom"flp&gt;&lt;"clear"&lgt;'
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9283
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9284
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9285
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9286
		"sDom": "lfrtip",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9287
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9288
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9289
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9290
		 * DataTables features two different built-in pagination interaction methods
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9291
		 * ('two_button' or 'full_numbers') which present different page controls to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9292
		 * the end user. Further methods can be added using the API (see below).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9293
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9294
		 *  @default two_button
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9295
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9296
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9297
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9298
		 *    $(document).ready( function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9299
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9300
		 *        "sPaginationType": "full_numbers"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9301
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9302
		 *    } )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9303
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9304
		"sPaginationType": "two_button",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9305
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9306
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9307
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9308
		 * Enable horizontal scrolling. When a table is too wide to fit into a certain
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9309
		 * layout, or you have a large number of columns in the table, you can enable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9310
		 * x-scrolling to show the table in a viewport, which can be scrolled. This
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9311
		 * property can by any CSS unit, or a number (in which case it will be treated
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9312
		 * as a pixel measurement).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9313
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9314
		 *  @default <i>blank string - i.e. disabled</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9315
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9316
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9317
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9318
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9319
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9320
		 *        "sScrollX": "100%",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9321
		 *        "bScrollCollapse": true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9322
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9323
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9324
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9325
		"sScrollX": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9326
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9327
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9328
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9329
		 * This property can be used to force a DataTable to use more width than it
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9330
		 * might otherwise do when x-scrolling is enabled. For example if you have a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9331
		 * table which requires to be well spaced, this parameter is useful for
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9332
		 * "over-sizing" the table, and thus forcing scrolling. This property can by
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9333
		 * any CSS unit, or a number (in which case it will be treated as a pixel
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9334
		 * measurement).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9335
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9336
		 *  @default <i>blank string - i.e. disabled</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9337
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9338
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9339
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9340
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9341
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9342
		 *        "sScrollX": "100%",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9343
		 *        "sScrollXInner": "110%"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9344
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9345
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9346
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9347
		"sScrollXInner": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9348
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9349
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9350
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9351
		 * Enable vertical scrolling. Vertical scrolling will constrain the DataTable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9352
		 * to the given height, an enable scrolling for any data which overflows the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9353
		 * current viewport. This can be used as an alternative to paging to display
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9354
		 * a lot of data in a small area (although paging and scrolling can both be
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9355
		 * enabled at the same time). This property can by any CSS unit, or a number
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9356
		 * (in which case it will be treated as a pixel measurement).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9357
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9358
		 *  @default <i>blank string - i.e. disabled</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9359
		 *  @dtopt Features
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9360
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9361
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9362
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9363
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9364
		 *        "sScrollY": "200px",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9365
		 *        "bPaginate": false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9366
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9367
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9368
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9369
		"sScrollY": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9370
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9371
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9372
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9373
		 * Set the HTTP method that is used to make the Ajax call for server-side
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9374
		 * processing or Ajax sourced data.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9375
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9376
		 *  @default GET
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9377
		 *  @dtopt Options
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9378
		 *  @dtopt Server-side
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9379
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9380
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9381
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9382
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9383
		 *        "bServerSide": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9384
		 *        "sAjaxSource": "scripts/post.php",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9385
		 *        "sServerMethod": "POST"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9386
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9387
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9388
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9389
		"sServerMethod": "GET"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9390
	};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9391
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9392
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9393
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9394
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9395
	 * Column options that can be given to DataTables at initialisation time.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9396
	 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9397
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9398
	DataTable.defaults.columns = {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9399
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9400
		 * Allows a column's sorting to take multiple columns into account when 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9401
		 * doing a sort. For example first name / last name columns make sense to 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9402
		 * do a multi-column sort over the two columns.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9403
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9404
		 *  @default null <i>Takes the value of the column index automatically</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9405
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9406
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9407
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9408
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9409
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9410
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9411
		 *        "aoColumnDefs": [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9412
		 *          { "aDataSort": [ 0, 1 ], "aTargets": [ 0 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9413
		 *          { "aDataSort": [ 1, 0 ], "aTargets": [ 1 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9414
		 *          { "aDataSort": [ 2, 3, 4 ], "aTargets": [ 2 ] }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9415
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9416
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9417
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9418
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9419
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9420
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9421
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9422
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9423
		 *        "aoColumns": [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9424
		 *          { "aDataSort": [ 0, 1 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9425
		 *          { "aDataSort": [ 1, 0 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9426
		 *          { "aDataSort": [ 2, 3, 4 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9427
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9428
		 *          null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9429
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9430
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9431
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9432
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9433
		"aDataSort": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9434
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9435
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9436
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9437
		 * You can control the default sorting direction, and even alter the behaviour
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9438
		 * of the sort handler (i.e. only allow ascending sorting etc) using this
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9439
		 * parameter.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9440
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9441
		 *  @default [ 'asc', 'desc' ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9442
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9443
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9444
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9445
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9446
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9447
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9448
		 *        "aoColumnDefs": [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9449
		 *          { "asSorting": [ "asc" ], "aTargets": [ 1 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9450
		 *          { "asSorting": [ "desc", "asc", "asc" ], "aTargets": [ 2 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9451
		 *          { "asSorting": [ "desc" ], "aTargets": [ 3 ] }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9452
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9453
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9454
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9455
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9456
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9457
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9458
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9459
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9460
		 *        "aoColumns": [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9461
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9462
		 *          { "asSorting": [ "asc" ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9463
		 *          { "asSorting": [ "desc", "asc", "asc" ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9464
		 *          { "asSorting": [ "desc" ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9465
		 *          null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9466
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9467
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9468
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9469
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9470
		"asSorting": [ 'asc', 'desc' ],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9471
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9472
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9473
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9474
		 * Enable or disable filtering on the data in this column.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9475
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9476
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9477
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9478
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9479
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9480
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9481
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9482
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9483
		 *        "aoColumnDefs": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9484
		 *          { "bSearchable": false, "aTargets": [ 0 ] }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9485
		 *        ] } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9486
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9487
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9488
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9489
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9490
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9491
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9492
		 *        "aoColumns": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9493
		 *          { "bSearchable": false },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9494
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9495
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9496
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9497
		 *          null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9498
		 *        ] } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9499
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9500
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9501
		"bSearchable": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9502
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9503
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9504
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9505
		 * Enable or disable sorting on this column.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9506
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9507
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9508
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9509
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9510
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9511
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9512
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9513
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9514
		 *        "aoColumnDefs": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9515
		 *          { "bSortable": false, "aTargets": [ 0 ] }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9516
		 *        ] } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9517
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9518
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9519
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9520
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9521
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9522
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9523
		 *        "aoColumns": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9524
		 *          { "bSortable": false },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9525
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9526
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9527
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9528
		 *          null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9529
		 *        ] } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9530
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9531
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9532
		"bSortable": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9533
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9534
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9535
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9536
		 * When using fnRender() for a column, you may wish to use the original data
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9537
		 * (before rendering) for sorting and filtering (the default is to used the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9538
		 * rendered data that the user can see). This may be useful for dates etc.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9539
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9540
		 * *NOTE* It is it is advisable now to use mDataProp as a function and make 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9541
		 * use of the 'type' that it gives, allowing (potentially) different data to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9542
		 * be used for sorting, filtering, display and type detection.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9543
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9544
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9545
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9546
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9547
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9548
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9549
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9550
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9551
		 *        "aoColumnDefs": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9552
		 *          {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9553
		 *            "fnRender": function ( oObj ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9554
		 *              return oObj.aData[0] +' '+ oObj.aData[3];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9555
		 *            },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9556
		 *            "bUseRendered": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9557
		 *            "aTargets": [ 0 ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9558
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9559
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9560
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9561
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9562
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9563
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9564
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9565
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9566
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9567
		 *        "aoColumns": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9568
		 *          {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9569
		 *            "fnRender": function ( oObj ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9570
		 *              return oObj.aData[0] +' '+ oObj.aData[3];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9571
		 *            },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9572
		 *            "bUseRendered": false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9573
		 *          },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9574
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9575
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9576
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9577
		 *          null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9578
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9579
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9580
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9581
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9582
		"bUseRendered": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9583
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9584
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9585
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9586
		 * Enable or disable the display of this column.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9587
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9588
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9589
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9590
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9591
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9592
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9593
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9594
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9595
		 *        "aoColumnDefs": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9596
		 *          { "bVisible": false, "aTargets": [ 0 ] }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9597
		 *        ] } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9598
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9599
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9600
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9601
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9602
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9603
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9604
		 *        "aoColumns": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9605
		 *          { "bVisible": false },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9606
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9607
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9608
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9609
		 *          null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9610
		 *        ] } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9611
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9612
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9613
		"bVisible": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9614
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9615
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9616
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9617
		 * Developer definable function that is called whenever a cell is created (Ajax source,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9618
		 * etc) or processed for input (DOM source). This can be used as a compliment to fnRender
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9619
		 * allowing you to modify the DOM element (add background colour for example) when the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9620
		 * element is available (since it is not when fnRender is called).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9621
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9622
		 *  @param {element} nTd The TD node that has been created
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9623
		 *  @param {*} sData The Data for the cell
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9624
		 *  @param {array|object} oData The data for the whole row
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9625
		 *  @param {int} iRow The row index for the aoData data store
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9626
		 *  @param {int} iCol The column index for aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9627
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9628
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9629
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9630
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9631
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9632
		 *        "aoColumnDefs": [ {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9633
		 *          "aTargets": [3],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9634
		 *          "fnCreatedCell": function (nTd, sData, oData, iRow, iCol) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9635
		 *            if ( sData == "1.7" ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9636
		 *              $(nTd).css('color', 'blue')
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9637
		 *            }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9638
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9639
		 *        } ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9640
		 *      });
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9641
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9642
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9643
		"fnCreatedCell": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9644
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9645
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9646
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9647
		 * Custom display function that will be called for the display of each cell in
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9648
		 * this column.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9649
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9650
		 *  @param {object} o Object with the following parameters:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9651
		 *  @param {int}    o.iDataRow The row in aoData
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9652
		 *  @param {int}    o.iDataColumn The column in question
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9653
		 *  @param {array}  o.aData The data for the row in question
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9654
		 *  @param {object} o.oSettings The settings object for this DataTables instance
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9655
		 *  @param {object} o.mDataProp The data property used for this column
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9656
		 *  @param {*}      val The current cell value
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9657
		 *  @returns {string} The string you which to use in the display
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9658
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9659
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9660
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9661
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9662
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9663
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9664
		 *        "aoColumnDefs": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9665
		 *          {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9666
		 *            "fnRender": function ( o, val ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9667
		 *              return o.aData[0] +' '+ o.aData[3];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9668
		 *            },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9669
		 *            "aTargets": [ 0 ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9670
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9671
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9672
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9673
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9674
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9675
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9676
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9677
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9678
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9679
		 *        "aoColumns": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9680
		 *          { "fnRender": function ( o, val ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9681
		 *            return o.aData[0] +' '+ o.aData[3];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9682
		 *          } },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9683
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9684
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9685
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9686
		 *          null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9687
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9688
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9689
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9690
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9691
		"fnRender": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9692
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9693
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9694
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9695
		 * The column index (starting from 0!) that you wish a sort to be performed
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9696
		 * upon when this column is selected for sorting. This can be used for sorting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9697
		 * on hidden columns for example.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9698
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9699
		 *  @default -1 <i>Use automatically calculated column index</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9700
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9701
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9702
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9703
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9704
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9705
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9706
		 *        "aoColumnDefs": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9707
		 *          { "iDataSort": 1, "aTargets": [ 0 ] }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9708
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9709
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9710
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9711
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9712
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9713
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9714
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9715
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9716
		 *        "aoColumns": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9717
		 *          { "iDataSort": 1 },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9718
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9719
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9720
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9721
		 *          null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9722
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9723
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9724
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9725
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9726
		"iDataSort": -1,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9727
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9728
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9729
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9730
		 * This property can be used to read data from any JSON data source property,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9731
		 * including deeply nested objects / properties. mDataProp can be given in a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9732
		 * number of different ways which effect its behaviour:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9733
		 *   <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9734
		 *     <li>integer - treated as an array index for the data source. This is the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9735
		 *       default that DataTables uses (incrementally increased for each column).</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9736
		 *     <li>string - read an object property from the data source. Note that you can
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9737
		 *       use Javascript dotted notation to read deep properties/arrays from the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9738
		 *       data source.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9739
		 *     <li>null -  the sDafaultContent option will use used for the cell (empty
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9740
		 *       string by default. This can be useful on generated columns such as
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9741
		 *       edit / delete action columns.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9742
		 *     <li>function - the function given will be executed whenever DataTables 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9743
		 *       needs to set or get the data for a cell in the column. The function 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9744
		 *       takes three parameters:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9745
		 *       <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9746
		 *         <li>{array|object} The data source for the row</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9747
		 *         <li>{string} The type call data requested - this will be 'set' when
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9748
		 *           setting data or 'filter', 'display', 'type' or 'sort' when gathering
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9749
		 *           data.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9750
		 *         <li>{*} Data to set when the second parameter is 'set'.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9751
		 *       </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9752
		 *       The return value from the function is not required when 'set' is the type
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9753
		 *       of call, but otherwise the return is what will be used for the data
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9754
		 *       requested.</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9755
		 *    </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9756
		 *  @type string|int|function|null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9757
		 *  @default null <i>Use automatically calculated column index</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9758
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9759
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9760
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9761
		 *    // Read table data from objects
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9762
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9763
		 *      var oTable = $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9764
		 *        "sAjaxSource": "sources/deep.txt",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9765
		 *        "aoColumns": [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9766
		 *          { "mDataProp": "engine" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9767
		 *          { "mDataProp": "browser" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9768
		 *          { "mDataProp": "platform.inner" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9769
		 *          { "mDataProp": "platform.details.0" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9770
		 *          { "mDataProp": "platform.details.1" }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9771
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9772
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9773
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9774
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9775
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9776
		 *    // Using mDataProp as a function to provide different information for
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9777
		 *    // sorting, filtering and display. In this case, currency (price)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9778
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9779
		 *      var oTable = $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9780
		 *        "aoColumnDefs": [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9781
		 *        {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9782
		 *          "aTargets": [ 0 ],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9783
		 *          "mDataProp": function ( source, type, val ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9784
		 *            if (type === 'set') {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9785
		 *              source.price = val;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9786
		 *              // Store the computed dislay and filter values for efficiency
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9787
		 *              source.price_display = val=="" ? "" : "$"+numberFormat(val);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9788
		 *              source.price_filter  = val=="" ? "" : "$"+numberFormat(val)+" "+val;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9789
		 *              return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9790
		 *            }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9791
		 *            else if (type === 'display') {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9792
		 *              return source.price_display;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9793
		 *            }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9794
		 *            else if (type === 'filter') {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9795
		 *              return source.price_filter;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9796
		 *            }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9797
		 *            // 'sort' and 'type' both just use the integer
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9798
		 *            return source.price;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9799
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9800
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9801
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9802
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9803
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9804
		"mDataProp": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9805
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9806
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9807
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9808
		 * Class to give to each cell in this column.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9809
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9810
		 *  @default <i>Empty string</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9811
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9812
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9813
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9814
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9815
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9816
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9817
		 *        "aoColumnDefs": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9818
		 *          { "sClass": "my_class", "aTargets": [ 0 ] }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9819
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9820
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9821
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9822
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9823
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9824
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9825
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9826
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9827
		 *        "aoColumns": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9828
		 *          { "sClass": "my_class" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9829
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9830
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9831
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9832
		 *          null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9833
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9834
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9835
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9836
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9837
		"sClass": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9838
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9839
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9840
		 * When DataTables calculates the column widths to assign to each column,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9841
		 * it finds the longest string in each column and then constructs a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9842
		 * temporary table and reads the widths from that. The problem with this
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9843
		 * is that "mmm" is much wider then "iiii", but the latter is a longer 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9844
		 * string - thus the calculation can go wrong (doing it properly and putting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9845
		 * it into an DOM object and measuring that is horribly(!) slow). Thus as
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9846
		 * a "work around" we provide this option. It will append its value to the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9847
		 * text that is found to be the longest string for the column - i.e. padding.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9848
		 * Generally you shouldn't need this, and it is not documented on the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9849
		 * general DataTables.net documentation
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9850
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9851
		 *  @default <i>Empty string<i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9852
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9853
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9854
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9855
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9856
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9857
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9858
		 *        "aoColumns": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9859
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9860
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9861
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9862
		 *          {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9863
		 *            "sContentPadding": "mmm"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9864
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9865
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9866
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9867
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9868
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9869
		"sContentPadding": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9870
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9871
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9872
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9873
		 * Allows a default value to be given for a column's data, and will be used
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9874
		 * whenever a null data source is encountered (this can be because mDataProp
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9875
		 * is set to null, or because the data source itself is null).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9876
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9877
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9878
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9879
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9880
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9881
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9882
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9883
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9884
		 *        "aoColumnDefs": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9885
		 *          {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9886
		 *            "mDataProp": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9887
		 *            "sDefaultContent": "Edit",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9888
		 *            "aTargets": [ -1 ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9889
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9890
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9891
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9892
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9893
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9894
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9895
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9896
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9897
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9898
		 *        "aoColumns": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9899
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9900
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9901
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9902
		 *          {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9903
		 *            "mDataProp": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9904
		 *            "sDefaultContent": "Edit"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9905
		 *          }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9906
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9907
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9908
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9909
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9910
		"sDefaultContent": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9911
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9912
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9913
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9914
		 * This parameter is only used in DataTables' server-side processing. It can
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9915
		 * be exceptionally useful to know what columns are being displayed on the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9916
		 * client side, and to map these to database fields. When defined, the names
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9917
		 * also allow DataTables to reorder information from the server if it comes
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9918
		 * back in an unexpected order (i.e. if you switch your columns around on the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9919
		 * client-side, your server-side code does not also need updating).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9920
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9921
		 *  @default <i>Empty string</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9922
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9923
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9924
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9925
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9926
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9927
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9928
		 *        "aoColumnDefs": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9929
		 *          { "sName": "engine", "aTargets": [ 0 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9930
		 *          { "sName": "browser", "aTargets": [ 1 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9931
		 *          { "sName": "platform", "aTargets": [ 2 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9932
		 *          { "sName": "version", "aTargets": [ 3 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9933
		 *          { "sName": "grade", "aTargets": [ 4 ] }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9934
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9935
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9936
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9937
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9938
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9939
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9940
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9941
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9942
		 *        "aoColumns": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9943
		 *          { "sName": "engine" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9944
		 *          { "sName": "browser" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9945
		 *          { "sName": "platform" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9946
		 *          { "sName": "version" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9947
		 *          { "sName": "grade" }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9948
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9949
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9950
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9951
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9952
		"sName": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9953
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9954
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9955
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9956
		 * Defines a data source type for the sorting which can be used to read
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9957
		 * realtime information from the table (updating the internally cached
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9958
		 * version) prior to sorting. This allows sorting to occur on user editable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9959
		 * elements such as form inputs.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9960
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9961
		 *  @default std
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9962
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9963
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9964
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9965
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9966
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9967
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9968
		 *        "aoColumnDefs": [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9969
		 *          { "sSortDataType": "dom-text", "aTargets": [ 2, 3 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9970
		 *          { "sType": "numeric", "aTargets": [ 3 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9971
		 *          { "sSortDataType": "dom-select", "aTargets": [ 4 ] },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9972
		 *          { "sSortDataType": "dom-checkbox", "aTargets": [ 5 ] }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9973
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9974
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9975
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9976
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9977
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9978
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9979
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9980
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9981
		 *        "aoColumns": [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9982
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9983
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9984
		 *          { "sSortDataType": "dom-text" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9985
		 *          { "sSortDataType": "dom-text", "sType": "numeric" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9986
		 *          { "sSortDataType": "dom-select" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9987
		 *          { "sSortDataType": "dom-checkbox" }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9988
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9989
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9990
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9991
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9992
		"sSortDataType": "std",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9993
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9994
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9995
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9996
		 * The title of this column.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9997
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9998
		 *  @default null <i>Derived from the 'TH' value for this column in the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
  9999
		 *    original HTML table.</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10000
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10001
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10002
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10003
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10004
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10005
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10006
		 *        "aoColumnDefs": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10007
		 *          { "sTitle": "My column title", "aTargets": [ 0 ] }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10008
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10009
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10010
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10011
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10012
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10013
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10014
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10015
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10016
		 *        "aoColumns": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10017
		 *          { "sTitle": "My column title" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10018
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10019
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10020
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10021
		 *          null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10022
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10023
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10024
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10025
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10026
		"sTitle": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10027
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10028
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10029
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10030
		 * The type allows you to specify how the data for this column will be sorted.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10031
		 * Four types (string, numeric, date and html (which will strip HTML tags
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10032
		 * before sorting)) are currently available. Note that only date formats
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10033
		 * understood by Javascript's Date() object will be accepted as type date. For
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10034
		 * example: "Mar 26, 2008 5:03 PM". May take the values: 'string', 'numeric',
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10035
		 * 'date' or 'html' (by default). Further types can be adding through
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10036
		 * plug-ins.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10037
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10038
		 *  @default null <i>Auto-detected from raw data</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10039
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10040
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10041
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10042
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10043
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10044
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10045
		 *        "aoColumnDefs": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10046
		 *          { "sType": "html", "aTargets": [ 0 ] }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10047
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10048
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10049
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10050
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10051
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10052
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10053
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10054
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10055
		 *        "aoColumns": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10056
		 *          { "sType": "html" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10057
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10058
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10059
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10060
		 *          null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10061
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10062
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10063
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10064
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10065
		"sType": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10066
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10067
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10068
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10069
		 * Defining the width of the column, this parameter may take any CSS value
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10070
		 * (3em, 20px etc). DataTables applys 'smart' widths to columns which have not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10071
		 * been given a specific width through this interface ensuring that the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10072
		 * remains readable.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10073
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10074
		 *  @default null <i>Automatic</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10075
		 *  @dtopt Columns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10076
		 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10077
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10078
		 *    // Using aoColumnDefs
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10079
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10080
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10081
		 *        "aoColumnDefs": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10082
		 *          { "sWidth": "20%", "aTargets": [ 0 ] }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10083
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10084
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10085
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10086
		 *    
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10087
		 *  @example
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10088
		 *    // Using aoColumns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10089
		 *    $(document).ready(function() {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10090
		 *      $('#example').dataTable( {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10091
		 *        "aoColumns": [ 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10092
		 *          { "sWidth": "20%" },
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10093
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10094
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10095
		 *          null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10096
		 *          null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10097
		 *        ]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10098
		 *      } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10099
		 *    } );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10100
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10101
		"sWidth": null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10102
	};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10103
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10104
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10105
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10106
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10107
	 * DataTables settings object - this holds all the information needed for a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10108
	 * given table, including configuration, data and current application of the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10109
	 * table options. DataTables does not have a single instance for each DataTable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10110
	 * with the settings attached to that instance, but rather instances of the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10111
	 * DataTable "class" are created on-the-fly as needed (typically by a 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10112
	 * $().dataTable() call) and the settings object is then applied to that
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10113
	 * instance.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10114
	 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10115
	 * Note that this object is related to {@link DataTable.defaults} but this 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10116
	 * one is the internal data store for DataTables's cache of columns. It should
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10117
	 * NOT be manipulated outside of DataTables. Any configuration should be done
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10118
	 * through the initialisation options.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10119
	 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10120
	 *  @todo Really should attach the settings object to individual instances so we
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10121
	 *    don't need to create new instances on each $().dataTable() call (if the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10122
	 *    table already exists). It would also save passing oSettings around and
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10123
	 *    into every single function. However, this is a very significant 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10124
	 *    architecture change for DataTables and will almost certainly break
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10125
	 *    backwards compatibility with older installations. This is something that
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10126
	 *    will be done in 2.0.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10127
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10128
	DataTable.models.oSettings = {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10129
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10130
		 * Primary features of DataTables and their enablement state.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10131
		 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10132
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10133
		"oFeatures": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10134
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10135
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10136
			 * Flag to say if DataTables should automatically try to calculate the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10137
			 * optimum table and columns widths (true) or not (false).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10138
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10139
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10140
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10141
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10142
			"bAutoWidth": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10143
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10144
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10145
			 * Delay the creation of TR and TD elements until they are actually
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10146
			 * needed by a driven page draw. This can give a significant speed
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10147
			 * increase for Ajax source and Javascript source data, but makes no
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10148
			 * difference at all fro DOM and server-side processing tables.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10149
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10150
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10151
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10152
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10153
			"bDeferRender": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10154
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10155
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10156
			 * Enable filtering on the table or not. Note that if this is disabled
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10157
			 * then there is no filtering at all on the table, including fnFilter.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10158
			 * To just remove the filtering input use sDom and remove the 'f' option.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10159
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10160
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10161
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10162
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10163
			"bFilter": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10164
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10165
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10166
			 * Table information element (the 'Showing x of y records' div) enable
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10167
			 * flag.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10168
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10169
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10170
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10171
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10172
			"bInfo": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10173
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10174
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10175
			 * Present a user control allowing the end user to change the page size
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10176
			 * when pagination is enabled.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10177
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10178
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10179
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10180
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10181
			"bLengthChange": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10182
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10183
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10184
			 * Pagination enabled or not. Note that if this is disabled then length
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10185
			 * changing must also be disabled.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10186
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10187
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10188
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10189
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10190
			"bPaginate": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10191
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10192
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10193
			 * Processing indicator enable flag whenever DataTables is enacting a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10194
			 * user request - typically an Ajax request for server-side processing.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10195
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10196
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10197
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10198
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10199
			"bProcessing": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10200
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10201
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10202
			 * Server-side processing enabled flag - when enabled DataTables will
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10203
			 * get all data from the server for every draw - there is no filtering,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10204
			 * sorting or paging done on the client-side.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10205
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10206
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10207
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10208
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10209
			"bServerSide": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10210
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10211
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10212
			 * Sorting enablement flag.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10213
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10214
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10215
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10216
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10217
			"bSort": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10218
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10219
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10220
			 * Apply a class to the columns which are being sorted to provide a
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10221
			 * visual highlight or not. This can slow things down when enabled since
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10222
			 * there is a lot of DOM interaction.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10223
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10224
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10225
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10226
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10227
			"bSortClasses": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10228
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10229
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10230
			 * State saving enablement flag.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10231
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10232
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10233
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10234
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10235
			"bStateSave": null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10236
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10237
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10238
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10239
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10240
		 * Scrolling settings for a table.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10241
		 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10242
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10243
		"oScroll": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10244
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10245
			 * Indicate if DataTables should be allowed to set the padding / margin
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10246
			 * etc for the scrolling header elements or not. Typically you will want
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10247
			 * this.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10248
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10249
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10250
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10251
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10252
			"bAutoCss": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10253
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10254
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10255
			 * When the table is shorter in height than sScrollY, collapse the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10256
			 * table container down to the height of the table (when true).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10257
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10258
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10259
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10260
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10261
			"bCollapse": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10262
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10263
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10264
			 * Infinite scrolling enablement flag. Now deprecated in favour of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10265
			 * using the Scroller plug-in.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10266
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10267
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10268
			 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10269
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10270
			"bInfinite": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10271
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10272
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10273
			 * Width of the scrollbar for the web-browser's platform. Calculated
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10274
			 * during table initialisation.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10275
			 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10276
			 *  @default 0
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10277
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10278
			"iBarWidth": 0,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10279
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10280
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10281
			 * Space (in pixels) between the bottom of the scrolling container and 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10282
			 * the bottom of the scrolling viewport before the next page is loaded
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10283
			 * when using infinite scrolling.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10284
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10285
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10286
			 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10287
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10288
			"iLoadGap": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10289
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10290
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10291
			 * Viewport width for horizontal scrolling. Horizontal scrolling is 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10292
			 * disabled if an empty string.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10293
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10294
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10295
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10296
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10297
			"sX": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10298
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10299
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10300
			 * Width to expand the table to when using x-scrolling. Typically you
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10301
			 * should not need to use this.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10302
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10303
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10304
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10305
			 *  @deprecated
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10306
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10307
			"sXInner": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10308
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10309
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10310
			 * Viewport height for vertical scrolling. Vertical scrolling is disabled
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10311
			 * if an empty string.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10312
			 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10313
			 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10314
			 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10315
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10316
			"sY": null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10317
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10318
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10319
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10320
		 * Language information for the table.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10321
		 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10322
		 *  @extends DataTable.defaults.oLanguage
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10323
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10324
		"oLanguage": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10325
			/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10326
			 * Information callback function. See 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10327
			 * {@link DataTable.defaults.fnInfoCallback}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10328
			 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10329
			 *  @default 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10330
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10331
			"fnInfoCallback": null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10332
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10333
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10334
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10335
		 * Array referencing the nodes which are used for the features. The 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10336
		 * parameters of this object match what is allowed by sDom - i.e.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10337
		 *   <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10338
		 *     <li>'l' - Length changing</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10339
		 *     <li>'f' - Filtering input</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10340
		 *     <li>'t' - The table!</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10341
		 *     <li>'i' - Information</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10342
		 *     <li>'p' - Pagination</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10343
		 *     <li>'r' - pRocessing</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10344
		 *   </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10345
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10346
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10347
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10348
		"aanFeatures": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10349
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10350
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10351
		 * Store data information - see {@link DataTable.models.oRow} for detailed
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10352
		 * information.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10353
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10354
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10355
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10356
		"aoData": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10357
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10358
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10359
		 * Array of indexes which are in the current display (after filtering etc)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10360
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10361
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10362
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10363
		"aiDisplay": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10364
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10365
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10366
		 * Array of indexes for display - no filtering
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10367
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10368
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10369
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10370
		"aiDisplayMaster": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10371
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10372
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10373
		 * Store information about each column that is in use
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10374
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10375
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10376
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10377
		"aoColumns": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10378
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10379
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10380
		 * Store information about the table's header
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10381
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10382
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10383
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10384
		"aoHeader": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10385
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10386
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10387
		 * Store information about the table's footer
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10388
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10389
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10390
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10391
		"aoFooter": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10392
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10393
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10394
		 * Search data array for regular expression searching
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10395
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10396
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10397
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10398
		"asDataSearch": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10399
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10400
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10401
		 * Store the applied global search information in case we want to force a 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10402
		 * research or compare the old search to a new one.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10403
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10404
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10405
		 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10406
		 *  @extends DataTable.models.oSearch
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10407
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10408
		"oPreviousSearch": {},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10409
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10410
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10411
		 * Store the applied search for each column - see 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10412
		 * {@link DataTable.models.oSearch} for the format that is used for the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10413
		 * filtering information for each column.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10414
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10415
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10416
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10417
		"aoPreSearchCols": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10418
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10419
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10420
		 * Sorting that is applied to the table. Note that the inner arrays are
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10421
		 * used in the following manner:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10422
		 * <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10423
		 *   <li>Index 0 - column number</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10424
		 *   <li>Index 1 - current sorting direction</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10425
		 *   <li>Index 2 - index of asSorting for this column</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10426
		 * </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10427
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10428
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10429
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10430
		 *  @todo These inner arrays should really be objects
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10431
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10432
		"aaSorting": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10433
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10434
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10435
		 * Sorting that is always applied to the table (i.e. prefixed in front of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10436
		 * aaSorting).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10437
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10438
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10439
		 *  @type array|null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10440
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10441
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10442
		"aaSortingFixed": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10443
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10444
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10445
		 * Classes to use for the striping of a table.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10446
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10447
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10448
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10449
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10450
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10451
		"asStripeClasses": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10452
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10453
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10454
		 * If restoring a table - we should restore its striping classes as well
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10455
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10456
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10457
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10458
		"asDestroyStripes": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10459
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10460
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10461
		 * If restoring a table - we should restore its width 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10462
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10463
		 *  @default 0
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10464
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10465
		"sDestroyWidth": 0,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10466
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10467
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10468
		 * Callback functions array for every time a row is inserted (i.e. on a draw).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10469
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10470
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10471
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10472
		"aoRowCallback": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10473
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10474
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10475
		 * Callback functions for the header on each draw.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10476
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10477
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10478
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10479
		"aoHeaderCallback": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10480
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10481
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10482
		 * Callback function for the footer on each draw.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10483
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10484
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10485
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10486
		"aoFooterCallback": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10487
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10488
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10489
		 * Array of callback functions for draw callback functions
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10490
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10491
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10492
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10493
		"aoDrawCallback": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10494
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10495
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10496
		 * Array of callback functions for row created function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10497
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10498
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10499
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10500
		"aoRowCreatedCallback": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10501
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10502
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10503
		 * Callback functions for just before the table is redrawn. A return of 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10504
		 * false will be used to cancel the draw.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10505
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10506
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10507
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10508
		"aoPreDrawCallback": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10509
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10510
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10511
		 * Callback functions for when the table has been initialised.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10512
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10513
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10514
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10515
		"aoInitComplete": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10516
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10517
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10518
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10519
		 * Callbacks for modifying the settings to be stored for state saving, prior to
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10520
		 * saving state.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10521
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10522
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10523
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10524
		"aoStateSaveParams": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10525
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10526
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10527
		 * Callbacks for modifying the settings that have been stored for state saving
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10528
		 * prior to using the stored values to restore the state.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10529
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10530
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10531
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10532
		"aoStateLoadParams": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10533
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10534
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10535
		 * Callbacks for operating on the settings object once the saved state has been
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10536
		 * loaded
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10537
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10538
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10539
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10540
		"aoStateLoaded": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10541
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10542
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10543
		 * Cache the table ID for quick access
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10544
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10545
		 *  @default <i>Empty string</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10546
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10547
		"sTableId": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10548
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10549
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10550
		 * The TABLE node for the main table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10551
		 *  @type node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10552
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10553
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10554
		"nTable": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10555
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10556
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10557
		 * Permanent ref to the thead element
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10558
		 *  @type node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10559
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10560
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10561
		"nTHead": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10562
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10563
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10564
		 * Permanent ref to the tfoot element - if it exists
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10565
		 *  @type node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10566
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10567
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10568
		"nTFoot": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10569
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10570
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10571
		 * Permanent ref to the tbody element
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10572
		 *  @type node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10573
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10574
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10575
		"nTBody": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10576
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10577
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10578
		 * Cache the wrapper node (contains all DataTables controlled elements)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10579
		 *  @type node
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10580
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10581
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10582
		"nTableWrapper": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10583
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10584
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10585
		 * Indicate if when using server-side processing the loading of data 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10586
		 * should be deferred until the second draw.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10587
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10588
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10589
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10590
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10591
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10592
		"bDeferLoading": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10593
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10594
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10595
		 * Indicate if all required information has been read in
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10596
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10597
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10598
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10599
		"bInitialised": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10600
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10601
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10602
		 * Information about open rows. Each object in the array has the parameters
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10603
		 * 'nTr' and 'nParent'
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10604
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10605
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10606
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10607
		"aoOpenRows": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10608
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10609
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10610
		 * Dictate the positioning of DataTables' control elements - see
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10611
		 * {@link DataTable.model.oInit.sDom}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10612
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10613
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10614
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10615
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10616
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10617
		"sDom": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10618
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10619
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10620
		 * Which type of pagination should be used.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10621
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10622
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10623
		 *  @type string 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10624
		 *  @default two_button
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10625
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10626
		"sPaginationType": "two_button",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10627
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10628
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10629
		 * The cookie duration (for bStateSave) in seconds.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10630
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10631
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10632
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10633
		 *  @default 0
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10634
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10635
		"iCookieDuration": 0,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10636
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10637
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10638
		 * The cookie name prefix.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10639
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10640
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10641
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10642
		 *  @default <i>Empty string</i>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10643
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10644
		"sCookiePrefix": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10645
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10646
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10647
		 * Callback function for cookie creation.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10648
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10649
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10650
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10651
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10652
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10653
		"fnCookieCallback": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10654
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10655
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10656
		 * Array of callback functions for state saving. Each array element is an 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10657
		 * object with the following parameters:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10658
		 *   <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10659
		 *     <li>function:fn - function to call. Takes two parameters, oSettings
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10660
		 *       and the JSON string to save that has been thus far created. Returns
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10661
		 *       a JSON string to be inserted into a json object 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10662
		 *       (i.e. '"param": [ 0, 1, 2]')</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10663
		 *     <li>string:sName - name of callback</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10664
		 *   </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10665
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10666
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10667
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10668
		"aoStateSave": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10669
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10670
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10671
		 * Array of callback functions for state loading. Each array element is an 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10672
		 * object with the following parameters:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10673
		 *   <ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10674
		 *     <li>function:fn - function to call. Takes two parameters, oSettings 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10675
		 *       and the object stored. May return false to cancel state loading</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10676
		 *     <li>string:sName - name of callback</li>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10677
		 *   </ul>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10678
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10679
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10680
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10681
		"aoStateLoad": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10682
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10683
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10684
		 * State that was loaded from the cookie. Useful for back reference
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10685
		 *  @type object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10686
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10687
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10688
		"oLoadedState": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10689
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10690
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10691
		 * Source url for AJAX data for the table.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10692
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10693
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10694
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10695
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10696
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10697
		"sAjaxSource": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10698
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10699
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10700
		 * Property from a given object from which to read the table data from. This
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10701
		 * can be an empty string (when not server-side processing), in which case 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10702
		 * it is  assumed an an array is given directly.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10703
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10704
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10705
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10706
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10707
		"sAjaxDataProp": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10708
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10709
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10710
		 * Note if draw should be blocked while getting data
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10711
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10712
		 *  @default true
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10713
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10714
		"bAjaxDataGet": true,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10715
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10716
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10717
		 * The last jQuery XHR object that was used for server-side data gathering. 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10718
		 * This can be used for working with the XHR information in one of the 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10719
		 * callbacks
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10720
		 *  @type object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10721
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10722
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10723
		"jqXHR": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10724
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10725
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10726
		 * Function to get the server-side data.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10727
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10728
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10729
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10730
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10731
		"fnServerData": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10732
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10733
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10734
		 * Functions which are called prior to sending an Ajax request so extra 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10735
		 * parameters can easily be sent to the server
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10736
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10737
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10738
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10739
		"aoServerParams": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10740
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10741
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10742
		 * Send the XHR HTTP method - GET or POST (could be PUT or DELETE if 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10743
		 * required).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10744
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10745
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10746
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10747
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10748
		"sServerMethod": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10749
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10750
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10751
		 * Format numbers for display.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10752
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10753
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10754
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10755
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10756
		"fnFormatNumber": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10757
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10758
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10759
		 * List of options that can be used for the user selectable length menu.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10760
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10761
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10762
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10763
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10764
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10765
		"aLengthMenu": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10766
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10767
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10768
		 * Counter for the draws that the table does. Also used as a tracker for
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10769
		 * server-side processing
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10770
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10771
		 *  @default 0
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10772
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10773
		"iDraw": 0,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10774
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10775
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10776
		 * Indicate if a redraw is being done - useful for Ajax
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10777
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10778
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10779
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10780
		"bDrawing": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10781
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10782
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10783
		 * Draw index (iDraw) of the last error when parsing the returned data
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10784
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10785
		 *  @default -1
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10786
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10787
		"iDrawError": -1,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10788
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10789
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10790
		 * Paging display length
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10791
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10792
		 *  @default 10
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10793
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10794
		"_iDisplayLength": 10,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10795
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10796
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10797
		 * Paging start point - aiDisplay index
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10798
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10799
		 *  @default 0
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10800
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10801
		"_iDisplayStart": 0,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10802
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10803
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10804
		 * Paging end point - aiDisplay index. Use fnDisplayEnd rather than
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10805
		 * this property to get the end point
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10806
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10807
		 *  @default 10
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10808
		 *  @private
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10809
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10810
		"_iDisplayEnd": 10,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10811
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10812
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10813
		 * Server-side processing - number of records in the result set
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10814
		 * (i.e. before filtering), Use fnRecordsTotal rather than
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10815
		 * this property to get the value of the number of records, regardless of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10816
		 * the server-side processing setting.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10817
		 *  @type int
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10818
		 *  @default 0
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10819
		 *  @private
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10820
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10821
		"_iRecordsTotal": 0,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10822
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10823
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10824
		 * Server-side processing - number of records in the current display set
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10825
		 * (i.e. after filtering). Use fnRecordsDisplay rather than
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10826
		 * this property to get the value of the number of records, regardless of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10827
		 * the server-side processing setting.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10828
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10829
		 *  @default 0
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10830
		 *  @private
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10831
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10832
		"_iRecordsDisplay": 0,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10833
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10834
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10835
		 * Flag to indicate if jQuery UI marking and classes should be used.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10836
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10837
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10838
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10839
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10840
		"bJUI": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10841
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10842
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10843
		 * The classes to use for the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10844
		 *  @type object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10845
		 *  @default {}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10846
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10847
		"oClasses": {},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10848
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10849
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10850
		 * Flag attached to the settings object so you can check in the draw 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10851
		 * callback if filtering has been done in the draw. Deprecated in favour of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10852
		 * events.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10853
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10854
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10855
		 *  @deprecated
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10856
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10857
		"bFiltered": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10858
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10859
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10860
		 * Flag attached to the settings object so you can check in the draw 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10861
		 * callback if sorting has been done in the draw. Deprecated in favour of
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10862
		 * events.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10863
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10864
		 *  @default false
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10865
		 *  @deprecated
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10866
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10867
		"bSorted": false,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10868
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10869
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10870
		 * Indicate that if multiple rows are in the header and there is more than 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10871
		 * one unique cell per column, if the top one (true) or bottom one (false) 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10872
		 * should be used for sorting / title by DataTables.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10873
		 * Note that this parameter will be set by the initialisation routine. To
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10874
		 * set a default use {@link DataTable.defaults}.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10875
		 *  @type boolean
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10876
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10877
		"bSortCellsTop": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10878
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10879
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10880
		 * Initialisation object that is used for the table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10881
		 *  @type object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10882
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10883
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10884
		"oInit": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10885
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10886
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10887
		 * Destroy callback functions - for plug-ins to attach themselves to the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10888
		 * destroy so they can clean up markup and events.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10889
		 *  @type array
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10890
		 *  @default []
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10891
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10892
		"aoDestroyCallback": [],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10893
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10894
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10895
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10896
		 * Get the number of records in the current record set, before filtering
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10897
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10898
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10899
		"fnRecordsTotal": function ()
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10900
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10901
			if ( this.oFeatures.bServerSide ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10902
				return parseInt(this._iRecordsTotal, 10);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10903
			} else {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10904
				return this.aiDisplayMaster.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10905
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10906
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10907
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10908
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10909
		 * Get the number of records in the current record set, after filtering
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10910
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10911
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10912
		"fnRecordsDisplay": function ()
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10913
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10914
			if ( this.oFeatures.bServerSide ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10915
				return parseInt(this._iRecordsDisplay, 10);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10916
			} else {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10917
				return this.aiDisplay.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10918
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10919
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10920
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10921
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10922
		 * Set the display end point - aiDisplay index
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10923
		 *  @type function
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10924
		 *  @todo Should do away with _iDisplayEnd and calculate it on-the-fly here
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10925
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10926
		"fnDisplayEnd": function ()
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10927
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10928
			if ( this.oFeatures.bServerSide ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10929
				if ( this.oFeatures.bPaginate === false || this._iDisplayLength == -1 ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10930
					return this._iDisplayStart+this.aiDisplay.length;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10931
				} else {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10932
					return Math.min( this._iDisplayStart+this._iDisplayLength, 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10933
						this._iRecordsDisplay );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10934
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10935
			} else {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10936
				return this._iDisplayEnd;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10937
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10938
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10939
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10940
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10941
		 * The DataTables object for this table
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10942
		 *  @type object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10943
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10944
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10945
		"oInstance": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10946
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10947
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10948
		 * Unique identifier for each instance of the DataTables object. If there
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10949
		 * is an ID on the table node, then it takes that value, otherwise an
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10950
		 * incrementing internal counter is used.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10951
		 *  @type string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10952
		 *  @default null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10953
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10954
		"sInstance": null,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10955
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10956
		/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10957
		 * tabindex attribute value that is added to DataTables control elements, allowing
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10958
		 * keyboard navigation of the table and its controls.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10959
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10960
		"iTabIndex": 0
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10961
	};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10962
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10963
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10964
	 * Extension object for DataTables that is used to provide all extension options.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10965
	 * 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10966
	 * Note that the <i>DataTable.ext</i> object is available through
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10967
	 * <i>jQuery.fn.dataTable.ext</i> where it may be accessed and manipulated. It is
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10968
	 * also aliased to <i>jQuery.fn.dataTableExt</i> for historic reasons.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10969
	 *  @namespace
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10970
	 *  @extends DataTable.models.ext
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10971
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10972
	DataTable.ext = $.extend( true, {}, DataTable.models.ext );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10973
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10974
	$.extend( DataTable.ext.oStdClasses, {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10975
		"sTable": "dataTable",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10976
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10977
		/* Two buttons buttons */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10978
		"sPagePrevEnabled": "paginate_enabled_previous",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10979
		"sPagePrevDisabled": "paginate_disabled_previous",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10980
		"sPageNextEnabled": "paginate_enabled_next",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10981
		"sPageNextDisabled": "paginate_disabled_next",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10982
		"sPageJUINext": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10983
		"sPageJUIPrev": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10984
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10985
		/* Full numbers paging buttons */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10986
		"sPageButton": "paginate_button",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10987
		"sPageButtonActive": "paginate_active",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10988
		"sPageButtonStaticDisabled": "paginate_button paginate_button_disabled",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10989
		"sPageFirst": "first",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10990
		"sPagePrevious": "previous",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10991
		"sPageNext": "next",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10992
		"sPageLast": "last",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10993
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10994
		/* Striping classes */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10995
		"sStripeOdd": "odd",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10996
		"sStripeEven": "even",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10997
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10998
		/* Empty row */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 10999
		"sRowEmpty": "dataTables_empty",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11000
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11001
		/* Features */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11002
		"sWrapper": "dataTables_wrapper",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11003
		"sFilter": "dataTables_filter",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11004
		"sInfo": "dataTables_info",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11005
		"sPaging": "dataTables_paginate paging_", /* Note that the type is postfixed */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11006
		"sLength": "dataTables_length",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11007
		"sProcessing": "dataTables_processing",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11008
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11009
		/* Sorting */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11010
		"sSortAsc": "sorting_asc",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11011
		"sSortDesc": "sorting_desc",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11012
		"sSortable": "sorting", /* Sortable in both directions */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11013
		"sSortableAsc": "sorting_asc_disabled",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11014
		"sSortableDesc": "sorting_desc_disabled",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11015
		"sSortableNone": "sorting_disabled",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11016
		"sSortColumn": "sorting_", /* Note that an int is postfixed for the sorting order */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11017
		"sSortJUIAsc": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11018
		"sSortJUIDesc": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11019
		"sSortJUI": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11020
		"sSortJUIAscAllowed": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11021
		"sSortJUIDescAllowed": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11022
		"sSortJUIWrapper": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11023
		"sSortIcon": "",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11024
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11025
		/* Scrolling */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11026
		"sScrollWrapper": "dataTables_scroll",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11027
		"sScrollHead": "dataTables_scrollHead",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11028
		"sScrollHeadInner": "dataTables_scrollHeadInner",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11029
		"sScrollBody": "dataTables_scrollBody",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11030
		"sScrollFoot": "dataTables_scrollFoot",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11031
		"sScrollFootInner": "dataTables_scrollFootInner",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11032
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11033
		/* Misc */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11034
		"sFooterTH": ""
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11035
	} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11036
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11037
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11038
	$.extend( DataTable.ext.oJUIClasses, DataTable.ext.oStdClasses, {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11039
		/* Two buttons buttons */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11040
		"sPagePrevEnabled": "fg-button ui-button ui-state-default ui-corner-left",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11041
		"sPagePrevDisabled": "fg-button ui-button ui-state-default ui-corner-left ui-state-disabled",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11042
		"sPageNextEnabled": "fg-button ui-button ui-state-default ui-corner-right",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11043
		"sPageNextDisabled": "fg-button ui-button ui-state-default ui-corner-right ui-state-disabled",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11044
		"sPageJUINext": "ui-icon ui-icon-circle-arrow-e",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11045
		"sPageJUIPrev": "ui-icon ui-icon-circle-arrow-w",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11046
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11047
		/* Full numbers paging buttons */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11048
		"sPageButton": "fg-button ui-button ui-state-default",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11049
		"sPageButtonActive": "fg-button ui-button ui-state-default ui-state-disabled",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11050
		"sPageButtonStaticDisabled": "fg-button ui-button ui-state-default ui-state-disabled",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11051
		"sPageFirst": "first ui-corner-tl ui-corner-bl",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11052
		"sPageLast": "last ui-corner-tr ui-corner-br",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11053
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11054
		/* Features */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11055
		"sPaging": "dataTables_paginate fg-buttonset ui-buttonset fg-buttonset-multi "+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11056
			"ui-buttonset-multi paging_", /* Note that the type is postfixed */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11057
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11058
		/* Sorting */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11059
		"sSortAsc": "ui-state-default",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11060
		"sSortDesc": "ui-state-default",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11061
		"sSortable": "ui-state-default",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11062
		"sSortableAsc": "ui-state-default",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11063
		"sSortableDesc": "ui-state-default",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11064
		"sSortableNone": "ui-state-default",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11065
		"sSortJUIAsc": "css_right ui-icon ui-icon-triangle-1-n",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11066
		"sSortJUIDesc": "css_right ui-icon ui-icon-triangle-1-s",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11067
		"sSortJUI": "css_right ui-icon ui-icon-carat-2-n-s",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11068
		"sSortJUIAscAllowed": "css_right ui-icon ui-icon-carat-1-n",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11069
		"sSortJUIDescAllowed": "css_right ui-icon ui-icon-carat-1-s",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11070
		"sSortJUIWrapper": "DataTables_sort_wrapper",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11071
		"sSortIcon": "DataTables_sort_icon",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11072
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11073
		/* Scrolling */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11074
		"sScrollHead": "dataTables_scrollHead ui-state-default",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11075
		"sScrollFoot": "dataTables_scrollFoot ui-state-default",
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11076
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11077
		/* Misc */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11078
		"sFooterTH": "ui-state-default"
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11079
	} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11080
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11081
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11082
	/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11083
	 * Variable: oPagination
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11084
	 * Purpose:  
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11085
	 * Scope:    jQuery.fn.dataTableExt
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11086
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11087
	$.extend( DataTable.ext.oPagination, {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11088
		/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11089
		 * Variable: two_button
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11090
		 * Purpose:  Standard two button (forward/back) pagination
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11091
		 * Scope:    jQuery.fn.dataTableExt.oPagination
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11092
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11093
		"two_button": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11094
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11095
			 * Function: oPagination.two_button.fnInit
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11096
			 * Purpose:  Initialise dom elements required for pagination with forward/back buttons only
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11097
			 * Returns:  -
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11098
			 * Inputs:   object:oSettings - dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11099
			 *           node:nPaging - the DIV which contains this pagination control
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11100
			 *           function:fnCallbackDraw - draw function which must be called on update
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11101
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11102
			"fnInit": function ( oSettings, nPaging, fnCallbackDraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11103
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11104
				var oLang = oSettings.oLanguage.oPaginate;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11105
				var oClasses = oSettings.oClasses;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11106
				var fnClickHandler = function ( e ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11107
					if ( oSettings.oApi._fnPageChange( oSettings, e.data.action ) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11108
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11109
						fnCallbackDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11110
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11111
				};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11112
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11113
				var sAppend = (!oSettings.bJUI) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11114
					'<a class="'+oSettings.oClasses.sPagePrevDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button">'+oLang.sPrevious+'</a>'+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11115
					'<a class="'+oSettings.oClasses.sPageNextDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button">'+oLang.sNext+'</a>'
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11116
					:
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11117
					'<a class="'+oSettings.oClasses.sPagePrevDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button"><span class="'+oSettings.oClasses.sPageJUIPrev+'"></span></a>'+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11118
					'<a class="'+oSettings.oClasses.sPageNextDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button"><span class="'+oSettings.oClasses.sPageJUINext+'"></span></a>';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11119
				$(nPaging).append( sAppend );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11120
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11121
				var els = $('a', nPaging);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11122
				var nPrevious = els[0],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11123
					nNext = els[1];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11124
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11125
				oSettings.oApi._fnBindAction( nPrevious, {action: "previous"}, fnClickHandler );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11126
				oSettings.oApi._fnBindAction( nNext,     {action: "next"},     fnClickHandler );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11127
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11128
				/* ID the first elements only */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11129
				if ( !oSettings.aanFeatures.p )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11130
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11131
					nPaging.id = oSettings.sTableId+'_paginate';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11132
					nPrevious.id = oSettings.sTableId+'_previous';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11133
					nNext.id = oSettings.sTableId+'_next';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11134
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11135
					nPrevious.setAttribute('aria-controls', oSettings.sTableId);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11136
					nNext.setAttribute('aria-controls', oSettings.sTableId);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11137
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11138
			},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11139
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11140
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11141
			 * Function: oPagination.two_button.fnUpdate
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11142
			 * Purpose:  Update the two button pagination at the end of the draw
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11143
			 * Returns:  -
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11144
			 * Inputs:   object:oSettings - dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11145
			 *           function:fnCallbackDraw - draw function to call on page change
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11146
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11147
			"fnUpdate": function ( oSettings, fnCallbackDraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11148
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11149
				if ( !oSettings.aanFeatures.p )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11150
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11151
					return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11152
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11153
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11154
				var oClasses = oSettings.oClasses;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11155
				var an = oSettings.aanFeatures.p;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11156
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11157
				/* Loop over each instance of the pager */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11158
				for ( var i=0, iLen=an.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11159
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11160
					if ( an[i].childNodes.length !== 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11161
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11162
						an[i].childNodes[0].className = ( oSettings._iDisplayStart === 0 ) ? 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11163
							oClasses.sPagePrevDisabled : oClasses.sPagePrevEnabled;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11164
						
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11165
						an[i].childNodes[1].className = ( oSettings.fnDisplayEnd() == oSettings.fnRecordsDisplay() ) ? 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11166
							oClasses.sPageNextDisabled : oClasses.sPageNextEnabled;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11167
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11168
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11169
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11170
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11171
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11172
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11173
		/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11174
		 * Variable: iFullNumbersShowPages
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11175
		 * Purpose:  Change the number of pages which can be seen
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11176
		 * Scope:    jQuery.fn.dataTableExt.oPagination
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11177
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11178
		"iFullNumbersShowPages": 5,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11179
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11180
		/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11181
		 * Variable: full_numbers
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11182
		 * Purpose:  Full numbers pagination
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11183
		 * Scope:    jQuery.fn.dataTableExt.oPagination
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11184
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11185
		"full_numbers": {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11186
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11187
			 * Function: oPagination.full_numbers.fnInit
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11188
			 * Purpose:  Initialise dom elements required for pagination with a list of the pages
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11189
			 * Returns:  -
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11190
			 * Inputs:   object:oSettings - dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11191
			 *           node:nPaging - the DIV which contains this pagination control
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11192
			 *           function:fnCallbackDraw - draw function which must be called on update
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11193
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11194
			"fnInit": function ( oSettings, nPaging, fnCallbackDraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11195
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11196
				var oLang = oSettings.oLanguage.oPaginate;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11197
				var oClasses = oSettings.oClasses;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11198
				var fnClickHandler = function ( e ) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11199
					if ( oSettings.oApi._fnPageChange( oSettings, e.data.action ) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11200
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11201
						fnCallbackDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11202
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11203
				};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11204
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11205
				$(nPaging).append(
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11206
					'<a  tabindex="'+oSettings.iTabIndex+'" class="'+oClasses.sPageButton+" "+oClasses.sPageFirst+'">'+oLang.sFirst+'</a>'+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11207
					'<a  tabindex="'+oSettings.iTabIndex+'" class="'+oClasses.sPageButton+" "+oClasses.sPagePrevious+'">'+oLang.sPrevious+'</a>'+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11208
					'<span></span>'+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11209
					'<a tabindex="'+oSettings.iTabIndex+'" class="'+oClasses.sPageButton+" "+oClasses.sPageNext+'">'+oLang.sNext+'</a>'+
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11210
					'<a tabindex="'+oSettings.iTabIndex+'" class="'+oClasses.sPageButton+" "+oClasses.sPageLast+'">'+oLang.sLast+'</a>'
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11211
				);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11212
				var els = $('a', nPaging);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11213
				var nFirst = els[0],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11214
					nPrev = els[1],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11215
					nNext = els[2],
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11216
					nLast = els[3];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11217
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11218
				oSettings.oApi._fnBindAction( nFirst, {action: "first"},    fnClickHandler );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11219
				oSettings.oApi._fnBindAction( nPrev,  {action: "previous"}, fnClickHandler );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11220
				oSettings.oApi._fnBindAction( nNext,  {action: "next"},     fnClickHandler );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11221
				oSettings.oApi._fnBindAction( nLast,  {action: "last"},     fnClickHandler );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11222
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11223
				/* ID the first elements only */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11224
				if ( !oSettings.aanFeatures.p )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11225
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11226
					nPaging.id = oSettings.sTableId+'_paginate';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11227
					nFirst.id =oSettings.sTableId+'_first';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11228
					nPrev.id =oSettings.sTableId+'_previous';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11229
					nNext.id =oSettings.sTableId+'_next';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11230
					nLast.id =oSettings.sTableId+'_last';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11231
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11232
			},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11233
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11234
			/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11235
			 * Function: oPagination.full_numbers.fnUpdate
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11236
			 * Purpose:  Update the list of page buttons shows
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11237
			 * Returns:  -
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11238
			 * Inputs:   object:oSettings - dataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11239
			 *           function:fnCallbackDraw - draw function to call on page change
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11240
			 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11241
			"fnUpdate": function ( oSettings, fnCallbackDraw )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11242
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11243
				if ( !oSettings.aanFeatures.p )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11244
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11245
					return;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11246
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11247
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11248
				var iPageCount = DataTable.ext.oPagination.iFullNumbersShowPages;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11249
				var iPageCountHalf = Math.floor(iPageCount / 2);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11250
				var iPages = Math.ceil((oSettings.fnRecordsDisplay()) / oSettings._iDisplayLength);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11251
				var iCurrentPage = Math.ceil(oSettings._iDisplayStart / oSettings._iDisplayLength) + 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11252
				var sList = "";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11253
				var iStartButton, iEndButton, i, iLen;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11254
				var oClasses = oSettings.oClasses;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11255
				var anButtons, anStatic, nPaginateList;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11256
				var an = oSettings.aanFeatures.p;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11257
				var fnBind = function (j) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11258
					oSettings.oApi._fnBindAction( this, {"page": j+iStartButton-1}, function(e) {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11259
						/* Use the information in the element to jump to the required page */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11260
						oSettings.oApi._fnPageChange( oSettings, e.data.page );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11261
						fnCallbackDraw( oSettings );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11262
						e.preventDefault();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11263
					} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11264
				};
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11265
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11266
				/* Pages calculation */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11267
				if (iPages < iPageCount)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11268
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11269
					iStartButton = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11270
					iEndButton = iPages;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11271
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11272
				else if (iCurrentPage <= iPageCountHalf)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11273
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11274
					iStartButton = 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11275
					iEndButton = iPageCount;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11276
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11277
				else if (iCurrentPage >= (iPages - iPageCountHalf))
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11278
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11279
					iStartButton = iPages - iPageCount + 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11280
					iEndButton = iPages;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11281
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11282
				else
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11283
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11284
					iStartButton = iCurrentPage - Math.ceil(iPageCount / 2) + 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11285
					iEndButton = iStartButton + iPageCount - 1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11286
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11287
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11288
				/* Build the dynamic list */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11289
				for ( i=iStartButton ; i<=iEndButton ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11290
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11291
					sList += (iCurrentPage !== i) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11292
						'<a tabindex="'+oSettings.iTabIndex+'" class="'+oClasses.sPageButton+'">'+oSettings.fnFormatNumber(i)+'</a>' :
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11293
						'<a tabindex="'+oSettings.iTabIndex+'" class="'+oClasses.sPageButtonActive+'">'+oSettings.fnFormatNumber(i)+'</a>';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11294
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11295
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11296
				/* Loop over each instance of the pager */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11297
				for ( i=0, iLen=an.length ; i<iLen ; i++ )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11298
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11299
					if ( an[i].childNodes.length === 0 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11300
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11301
						continue;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11302
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11303
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11304
					/* Build up the dynamic list forst - html and listeners */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11305
					$('span:eq(0)', an[i])
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11306
						.html( sList )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11307
						.children('a').each( fnBind );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11308
					
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11309
					/* Update the premanent botton's classes */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11310
					anButtons = an[i].getElementsByTagName('a');
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11311
					anStatic = [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11312
						anButtons[0], anButtons[1], 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11313
						anButtons[anButtons.length-2], anButtons[anButtons.length-1]
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11314
					];
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11315
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11316
					$(anStatic).removeClass( oClasses.sPageButton+" "+oClasses.sPageButtonActive+" "+oClasses.sPageButtonStaticDisabled );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11317
					$([anStatic[0], anStatic[1]]).addClass( 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11318
						(iCurrentPage==1) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11319
							oClasses.sPageButtonStaticDisabled :
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11320
							oClasses.sPageButton
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11321
					);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11322
					$([anStatic[2], anStatic[3]]).addClass(
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11323
						(iPages===0 || iCurrentPage===iPages || oSettings._iDisplayLength===-1) ?
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11324
							oClasses.sPageButtonStaticDisabled :
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11325
							oClasses.sPageButton
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11326
					);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11327
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11328
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11329
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11330
	} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11331
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11332
	$.extend( DataTable.ext.oSort, {
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11333
		/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11334
		 * text sorting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11335
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11336
		"string-pre": function ( a )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11337
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11338
			if ( typeof a != 'string' ) { a = ''; }
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11339
			return a.toLowerCase();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11340
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11341
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11342
		"string-asc": function ( x, y )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11343
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11344
			return ((x < y) ? -1 : ((x > y) ? 1 : 0));
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11345
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11346
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11347
		"string-desc": function ( x, y )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11348
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11349
			return ((x < y) ? 1 : ((x > y) ? -1 : 0));
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11350
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11351
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11352
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11353
		/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11354
		 * html sorting (ignore html tags)
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11355
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11356
		"html-pre": function ( a )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11357
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11358
			return a.replace( /<.*?>/g, "" ).toLowerCase();
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11359
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11360
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11361
		"html-asc": function ( x, y )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11362
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11363
			return ((x < y) ? -1 : ((x > y) ? 1 : 0));
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11364
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11365
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11366
		"html-desc": function ( x, y )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11367
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11368
			return ((x < y) ? 1 : ((x > y) ? -1 : 0));
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11369
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11370
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11371
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11372
		/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11373
		 * date sorting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11374
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11375
		"date-pre": function ( a )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11376
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11377
			var x = Date.parse( a );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11378
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11379
			if ( isNaN(x) || x==="" )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11380
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11381
				x = Date.parse( "01/01/1970 00:00:00" );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11382
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11383
			return x;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11384
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11385
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11386
		"date-asc": function ( x, y )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11387
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11388
			return x - y;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11389
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11390
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11391
		"date-desc": function ( x, y )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11392
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11393
			return y - x;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11394
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11395
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11396
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11397
		/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11398
		 * numerical sorting
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11399
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11400
		"numeric-pre": function ( a )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11401
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11402
			return (a=="-" || a==="") ? 0 : a*1;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11403
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11404
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11405
		"numeric-asc": function ( x, y )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11406
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11407
			return x - y;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11408
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11409
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11410
		"numeric-desc": function ( x, y )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11411
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11412
			return y - x;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11413
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11414
	} );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11415
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11416
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11417
	$.extend( DataTable.ext.aTypes, [
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11418
		/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11419
		 * Function: -
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11420
		 * Purpose:  Check to see if a string is numeric
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11421
		 * Returns:  string:'numeric' or null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11422
		 * Inputs:   mixed:sText - string to check
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11423
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11424
		function ( sData )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11425
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11426
			/* Allow zero length strings as a number */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11427
			if ( typeof sData === 'number' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11428
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11429
				return 'numeric';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11430
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11431
			else if ( typeof sData !== 'string' )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11432
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11433
				return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11434
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11435
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11436
			var sValidFirstChars = "0123456789-";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11437
			var sValidChars = "0123456789.";
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11438
			var Char;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11439
			var bDecimal = false;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11440
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11441
			/* Check for a valid first char (no period and allow negatives) */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11442
			Char = sData.charAt(0); 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11443
			if (sValidFirstChars.indexOf(Char) == -1) 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11444
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11445
				return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11446
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11447
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11448
			/* Check all the other characters are valid */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11449
			for ( var i=1 ; i<sData.length ; i++ ) 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11450
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11451
				Char = sData.charAt(i); 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11452
				if (sValidChars.indexOf(Char) == -1) 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11453
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11454
					return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11455
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11456
				
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11457
				/* Only allowed one decimal place... */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11458
				if ( Char == "." )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11459
				{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11460
					if ( bDecimal )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11461
					{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11462
						return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11463
					}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11464
					bDecimal = true;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11465
				}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11466
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11467
			
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11468
			return 'numeric';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11469
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11470
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11471
		/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11472
		 * Function: -
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11473
		 * Purpose:  Check to see if a string is actually a formatted date
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11474
		 * Returns:  string:'date' or null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11475
		 * Inputs:   string:sText - string to check
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11476
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11477
		function ( sData )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11478
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11479
			var iParse = Date.parse(sData);
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11480
			if ( (iParse !== null && !isNaN(iParse)) || (typeof sData === 'string' && sData.length === 0) )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11481
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11482
				return 'date';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11483
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11484
			return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11485
		},
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11486
		
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11487
		/*
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11488
		 * Function: -
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11489
		 * Purpose:  Check to see if a string should be treated as an HTML string
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11490
		 * Returns:  string:'html' or null
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11491
		 * Inputs:   string:sText - string to check
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11492
		 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11493
		function ( sData )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11494
		{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11495
			if ( typeof sData === 'string' && sData.indexOf('<') != -1 && sData.indexOf('>') != -1 )
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11496
			{
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11497
				return 'html';
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11498
			}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11499
			return null;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11500
		}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11501
	] );
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11502
	
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11503
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11504
	// jQuery aliases
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11505
	$.fn.DataTable = DataTable;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11506
	$.fn.dataTable = DataTable;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11507
	$.fn.dataTableSettings = DataTable.settings;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11508
	$.fn.dataTableExt = DataTable.ext;
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11509
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11510
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11511
	// Information about events fired by DataTables - for documentation.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11512
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11513
	 * Draw event, fired whenever the table is redrawn on the page, at the same point as
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11514
	 * fnDrawCallback. This may be useful for binding events or performing calculations when
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11515
	 * the table is altered at all.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11516
	 *  @name DataTable#draw
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11517
	 *  @event
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11518
	 *  @param {event} e jQuery event object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11519
	 *  @param {object} o DataTables settings object {@link DataTable.models.oSettings}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11520
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11521
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11522
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11523
	 * Filter event, fired when the filtering applied to the table (using the build in global
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11524
	 * global filter, or column filters) is altered.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11525
	 *  @name DataTable#filter
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11526
	 *  @event
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11527
	 *  @param {event} e jQuery event object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11528
	 *  @param {object} o DataTables settings object {@link DataTable.models.oSettings}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11529
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11530
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11531
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11532
	 * Page change event, fired when the paging of the table is altered.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11533
	 *  @name DataTable#page
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11534
	 *  @event
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11535
	 *  @param {event} e jQuery event object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11536
	 *  @param {object} o DataTables settings object {@link DataTable.models.oSettings}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11537
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11538
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11539
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11540
	 * Sort event, fired when the sorting applied to the table is altered.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11541
	 *  @name DataTable#sort
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11542
	 *  @event
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11543
	 *  @param {event} e jQuery event object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11544
	 *  @param {object} o DataTables settings object {@link DataTable.models.oSettings}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11545
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11546
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11547
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11548
	 * DataTables initialisation complete event, fired when the table is fully drawn,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11549
	 * including Ajax data loaded, if Ajax data is required.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11550
	 *  @name DataTable#init
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11551
	 *  @event
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11552
	 *  @param {event} e jQuery event object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11553
	 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11554
	 *  @param {object} json The JSON object request from the server - only
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11555
	 *    present if client-side Ajax sourced data is used</li></ol>
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11556
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11557
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11558
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11559
	 * State save event, fired when the table has changed state a new state save is required.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11560
	 * This method allows modification of the state saving object prior to actually doing the
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11561
	 * save, including addition or other state properties (for plug-ins) or modification
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11562
	 * of a DataTables core property.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11563
	 *  @name DataTable#stateSaveParams
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11564
	 *  @event
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11565
	 *  @param {event} e jQuery event object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11566
	 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11567
	 *  @param {object} json The state information to be saved
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11568
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11569
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11570
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11571
	 * State load event, fired when the table is loading state from the stored data, but
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11572
	 * prior to the settings object being modified by the saved state - allowing modification
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11573
	 * of the saved state is required or loading of state for a plug-in.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11574
	 *  @name DataTable#stateLoadParams
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11575
	 *  @event
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11576
	 *  @param {event} e jQuery event object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11577
	 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11578
	 *  @param {object} json The saved state information
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11579
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11580
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11581
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11582
	 * State loaded event, fired when state has been loaded from stored data and the settings
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11583
	 * object has been modified by the loaded data.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11584
	 *  @name DataTable#stateLoaded
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11585
	 *  @event
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11586
	 *  @param {event} e jQuery event object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11587
	 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11588
	 *  @param {object} json The saved state information
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11589
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11590
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11591
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11592
	 * Processing event, fired when DataTables is doing some kind of processing (be it,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11593
	 * sort, filter or anything else). Can be used to indicate to the end user that
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11594
	 * there is something happening, or that something has finished.
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11595
	 *  @name DataTable#processing
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11596
	 *  @event
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11597
	 *  @param {event} e jQuery event object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11598
	 *  @param {object} oSettings DataTables settings object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11599
	 *  @param {boolean} bShow Flag for if DataTables is doing processing or not
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11600
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11601
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11602
	/**
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11603
	 * Ajax (XHR) event, fired whenever an Ajax request is completed from a request to 
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11604
	 * made to the server for new data (note that this trigger is called in fnServerData,
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11605
	 * if you override fnServerData and which to use this event, you need to trigger it in
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11606
	 * you success function).
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11607
	 *  @name DataTable#xhr
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11608
	 *  @event
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11609
	 *  @param {event} e jQuery event object
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11610
	 *  @param {object} o DataTables settings object {@link DataTable.models.oSettings}
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11611
	 */
38f409912075 Datatables migration on par w/ jquery
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
 11612
}(jQuery, window, document, undefined));