CC-3174 : showbuilder
working on trying to save/load state serialized into the db for datatables.
This commit is contained in:
parent
378d3d3ef4
commit
9b5a0fc565
8 changed files with 211 additions and 231 deletions
|
@ -24,7 +24,6 @@ class ApiController extends Zend_Controller_Action
|
||||||
->addActionContext('status', 'json')
|
->addActionContext('status', 'json')
|
||||||
->addActionContext('register-component', 'json')
|
->addActionContext('register-component', 'json')
|
||||||
->addActionContext('update-liquidsoap-status', 'json')
|
->addActionContext('update-liquidsoap-status', 'json')
|
||||||
->addActionContext('library-init', 'json')
|
|
||||||
->addActionContext('live-chat', 'json')
|
->addActionContext('live-chat', 'json')
|
||||||
->addActionContext('update-file-system-mount', 'json')
|
->addActionContext('update-file-system-mount', 'json')
|
||||||
->addActionContext('handle-watched-dir-missing', 'json')
|
->addActionContext('handle-watched-dir-missing', 'json')
|
||||||
|
@ -807,25 +806,6 @@ class ApiController extends Zend_Controller_Action
|
||||||
Application_Model_StreamSetting::setLiquidsoapError($stream_id, $msg, $boot_time);
|
Application_Model_StreamSetting::setLiquidsoapError($stream_id, $msg, $boot_time);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Sets up and send init values used in the Library.
|
|
||||||
* This is being used by library.js
|
|
||||||
*/
|
|
||||||
public function libraryInitAction(){
|
|
||||||
$this->view->layout()->disableLayout();
|
|
||||||
$this->_helper->viewRenderer->setNoRender(true);
|
|
||||||
|
|
||||||
if(is_null(Zend_Auth::getInstance()->getStorage()->read())) {
|
|
||||||
header('HTTP/1.0 401 Unauthorized');
|
|
||||||
print 'You are not allowed to access this resource.';
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->view->libraryInit = array(
|
|
||||||
"numEntries"=>Application_Model_Preference::GetLibraryNumEntries()
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
// handles addition/deletion of mount point which watched dirs reside
|
// handles addition/deletion of mount point which watched dirs reside
|
||||||
public function updateFileSystemMountAction(){
|
public function updateFileSystemMountAction(){
|
||||||
global $CC_CONFIG;
|
global $CC_CONFIG;
|
||||||
|
|
|
@ -47,7 +47,7 @@ class LibraryController extends Zend_Controller_Action
|
||||||
$this->view->headScript()->appendFile($baseUrl.'/js/datatables/plugin/dataTables.pluginAPI.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
$this->view->headScript()->appendFile($baseUrl.'/js/datatables/plugin/dataTables.pluginAPI.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
||||||
$this->view->headScript()->appendFile($baseUrl.'/js/datatables/plugin/dataTables.fnSetFilteringDelay.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
$this->view->headScript()->appendFile($baseUrl.'/js/datatables/plugin/dataTables.fnSetFilteringDelay.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
||||||
$this->view->headScript()->appendFile($baseUrl.'/js/datatables/plugin/dataTables.ColVis.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
$this->view->headScript()->appendFile($baseUrl.'/js/datatables/plugin/dataTables.ColVis.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
||||||
$this->view->headScript()->appendFile($baseUrl.'/js/datatables/plugin/dataTables.ColReorderResize.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
$this->view->headScript()->appendFile($baseUrl.'/js/datatables/plugin/dataTables.ColReorder.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
||||||
$this->view->headScript()->appendFile($baseUrl.'/js/datatables/plugin/dataTables.FixedColumns.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
$this->view->headScript()->appendFile($baseUrl.'/js/datatables/plugin/dataTables.FixedColumns.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
||||||
$this->view->headScript()->appendFile($baseUrl.'/js/datatables/plugin/dataTables.TableTools.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
$this->view->headScript()->appendFile($baseUrl.'/js/datatables/plugin/dataTables.TableTools.js?'.$CC_CONFIG['airtime_version'],'text/javascript');
|
||||||
|
|
||||||
|
@ -282,14 +282,4 @@ class LibraryController extends Zend_Controller_Action
|
||||||
$this->view->error_msg = $file->getSoundCloudErrorMsg();
|
$this->view->error_msg = $file->getSoundCloudErrorMsg();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Stores the number of entries user chose to show in the Library
|
|
||||||
* to the pref db
|
|
||||||
*/
|
|
||||||
public function setNumEntriesAction() {
|
|
||||||
$request = $this->getRequest();
|
|
||||||
$numEntries = $request->getParam('numEntries');
|
|
||||||
Application_Model_Preference::SetLibraryNumEntries($numEntries);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,6 +14,8 @@ class PreferenceController extends Zend_Controller_Action
|
||||||
->addActionContext('is-import-in-progress', 'json')
|
->addActionContext('is-import-in-progress', 'json')
|
||||||
->addActionContext('change-stream-setting', 'json')
|
->addActionContext('change-stream-setting', 'json')
|
||||||
->addActionContext('get-liquidsoap-status', 'json')
|
->addActionContext('get-liquidsoap-status', 'json')
|
||||||
|
->addActionContext('get-library-datatable', 'json')
|
||||||
|
->addActionContext('set-library-datatable', 'json')
|
||||||
->initContext();
|
->initContext();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -331,6 +333,26 @@ class PreferenceController extends Zend_Controller_Action
|
||||||
}
|
}
|
||||||
die(json_encode($out));
|
die(json_encode($out));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function setLibraryDatatableAction() {
|
||||||
|
|
||||||
|
$request = $this->getRequest();
|
||||||
|
$settings = $request->getParam("settings");
|
||||||
|
|
||||||
|
$data = serialize($settings);
|
||||||
|
Logging::log("library datatable");
|
||||||
|
Logging::log($data);
|
||||||
|
|
||||||
|
Application_Model_Preference::SetValue("library_datatable", $data, true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getLibraryDatatableAction() {
|
||||||
|
|
||||||
|
$data = Application_Model_Preference::GetValue("library_datatable", true);
|
||||||
|
|
||||||
|
$this->view->settings = unserialize($data);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,3 +3,10 @@
|
||||||
#show_builder input.input_text {
|
#show_builder input.input_text {
|
||||||
width:100px;
|
width:100px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#show_builder span.ui-icon-triangle-1-e {
|
||||||
|
float: left;
|
||||||
|
position: relative;
|
||||||
|
left: -20px;
|
||||||
|
top: 15px;
|
||||||
|
}
|
||||||
|
|
|
@ -211,7 +211,64 @@ function addQtipToSCIcons(){
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function fnCreatedRow( nRow, aData, iDataIndex ) {
|
$(document).ready(function() {
|
||||||
|
var oTable;
|
||||||
|
|
||||||
|
$('.tabs').tabs();
|
||||||
|
|
||||||
|
oTable = $('#library_display').dataTable( {
|
||||||
|
"bProcessing": true,
|
||||||
|
"bServerSide": true,
|
||||||
|
|
||||||
|
"bStateSave": true,
|
||||||
|
"fnStateSave": function (oSettings, oData) {
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "/preference/set-library-datatable",
|
||||||
|
type: "POST",
|
||||||
|
data: {settings : oData, format: "json"},
|
||||||
|
dataType: "json",
|
||||||
|
success: function(){
|
||||||
|
var x;
|
||||||
|
},
|
||||||
|
error: function (jqXHR, textStatus, errorThrown) {
|
||||||
|
var x;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
"fnStateLoad": function (oSettings) {
|
||||||
|
var o;
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "/preference/get-library-datatable",
|
||||||
|
type: "GET",
|
||||||
|
data: {format: "json"},
|
||||||
|
dataType: "json",
|
||||||
|
async: false,
|
||||||
|
success: function(json){
|
||||||
|
o = json.settings;
|
||||||
|
},
|
||||||
|
error: function (jqXHR, textStatus, errorThrown) {
|
||||||
|
var x;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
return o;
|
||||||
|
},
|
||||||
|
|
||||||
|
"sAjaxSource": "/Library/contents",
|
||||||
|
"fnServerData": function ( sSource, aoData, testCallback ) {
|
||||||
|
aoData.push( { name: "format", value: "json"} );
|
||||||
|
$.ajax( {
|
||||||
|
"dataType": 'json',
|
||||||
|
"type": "GET",
|
||||||
|
"url": sSource,
|
||||||
|
"data": aoData,
|
||||||
|
"success": testCallback
|
||||||
|
} );
|
||||||
|
},
|
||||||
|
"fnRowCallback": AIRTIME.library.events.fnRowCallback,
|
||||||
|
"fnCreatedRow": function( nRow, aData, iDataIndex ) {
|
||||||
|
|
||||||
//call the context menu so we can prevent the event from propagating.
|
//call the context menu so we can prevent the event from propagating.
|
||||||
$(nRow).find('td:not(.library_checkbox):not(.library_type)').click(function(e){
|
$(nRow).find('td:not(.library_checkbox):not(.library_type)').click(function(e){
|
||||||
|
@ -256,44 +313,7 @@ function fnCreatedRow( nRow, aData, iDataIndex ) {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
});
|
});
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Updates pref db when user changes the # of entries to show
|
|
||||||
*/
|
|
||||||
function saveNumEntriesSetting() {
|
|
||||||
$('select[name=library_display_length]').change(function() {
|
|
||||||
var url = '/Library/set-num-entries/format/json';
|
|
||||||
$.post(url, {numEntries: $(this).val()});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Use user preference for number of entries to show
|
|
||||||
*/
|
|
||||||
function getNumEntriesPreference(data) {
|
|
||||||
return parseInt(data.libraryInit.numEntries, 10);
|
|
||||||
}
|
|
||||||
|
|
||||||
function createDataTable(data) {
|
|
||||||
var oTable;
|
|
||||||
|
|
||||||
oTable = $('#library_display').dataTable( {
|
|
||||||
"bProcessing": true,
|
|
||||||
"bServerSide": true,
|
|
||||||
"sAjaxSource": "/Library/contents",
|
|
||||||
"fnServerData": function ( sSource, aoData, testCallback ) {
|
|
||||||
aoData.push( { name: "format", value: "json"} );
|
|
||||||
$.ajax( {
|
|
||||||
"dataType": 'json',
|
|
||||||
"type": "GET",
|
|
||||||
"url": sSource,
|
|
||||||
"data": aoData,
|
|
||||||
"success": testCallback
|
|
||||||
} );
|
|
||||||
},
|
},
|
||||||
"fnRowCallback": AIRTIME.library.events.fnRowCallback,
|
|
||||||
"fnCreatedRow": fnCreatedRow,
|
|
||||||
"fnDrawCallback": AIRTIME.library.events.fnDrawCallback,
|
"fnDrawCallback": AIRTIME.library.events.fnDrawCallback,
|
||||||
"fnHeaderCallback": function(nHead) {
|
"fnHeaderCallback": function(nHead) {
|
||||||
$(nHead).find("input[type=checkbox]").attr("checked", false);
|
$(nHead).find("input[type=checkbox]").attr("checked", false);
|
||||||
|
@ -319,7 +339,6 @@ function createDataTable(data) {
|
||||||
"oLanguage": {
|
"oLanguage": {
|
||||||
"sSearch": ""
|
"sSearch": ""
|
||||||
},
|
},
|
||||||
"iDisplayLength": getNumEntriesPreference(data),
|
|
||||||
|
|
||||||
// R = ColReorder, C = ColVis, T = TableTools
|
// R = ColReorder, C = ColVis, T = TableTools
|
||||||
"sDom": 'Rlfr<"H"T<"library_toolbar"C>>t<"F"ip>',
|
"sDom": 'Rlfr<"H"T<"library_toolbar"C>>t<"F"ip>',
|
||||||
|
@ -353,8 +372,7 @@ function createDataTable(data) {
|
||||||
"buttonText": "Show/Hide Columns",
|
"buttonText": "Show/Hide Columns",
|
||||||
"sAlign": "right",
|
"sAlign": "right",
|
||||||
"aiExclude": [0, 1],
|
"aiExclude": [0, 1],
|
||||||
"sSize": "css",
|
"sSize": "css"
|
||||||
"bShowAll": true
|
|
||||||
},
|
},
|
||||||
|
|
||||||
"oColReorder": {
|
"oColReorder": {
|
||||||
|
@ -377,13 +395,6 @@ function createDataTable(data) {
|
||||||
oTT.fnSelectNone();
|
oTT.fnSelectNone();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
|
||||||
|
|
||||||
$(document).ready(function() {
|
|
||||||
$('.tabs').tabs();
|
|
||||||
|
|
||||||
$.ajax({url: "/Api/library-init/format/json", dataType:"json", success:createDataTable,
|
|
||||||
error:function(jqXHR, textStatus, errorThrown){}});
|
|
||||||
|
|
||||||
checkImportStatus();
|
checkImportStatus();
|
||||||
setInterval( checkImportStatus, 5000 );
|
setInterval( checkImportStatus, 5000 );
|
||||||
|
|
|
@ -205,7 +205,7 @@ $(document).ready(function() {
|
||||||
if (aData.header === true) {
|
if (aData.header === true) {
|
||||||
cl = 'sb-header';
|
cl = 'sb-header';
|
||||||
|
|
||||||
sSeparatorHTML = '<span>'+aData.title+'</span><span>'+aData.starts+'</span><span>'+aData.ends+'</span>';
|
sSeparatorHTML = '<span>'+aData.title+'</span><span>'+aData.starts+'</span><span>'+aData.ends+'</span><span class="ui-icon ui-icon-triangle-1-e"></span>';
|
||||||
fnPrepareSeparatorRow(sSeparatorHTML, cl, 0);
|
fnPrepareSeparatorRow(sSeparatorHTML, cl, 0);
|
||||||
}
|
}
|
||||||
else if (aData.footer === true) {
|
else if (aData.footer === true) {
|
||||||
|
@ -230,7 +230,7 @@ $(document).ready(function() {
|
||||||
|
|
||||||
node = nRow.children[0];
|
node = nRow.children[0];
|
||||||
if (aData.checkbox === true) {
|
if (aData.checkbox === true) {
|
||||||
node.innerHTML = '<input type="checkbox" name="'+aData.id+'"></input>';
|
node.innerHTML = '<input type="checkbox" name="'+aData.id+'"></input><span class="ui-icon ui-icon-triangle-1-e"></span>';
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
node.innerHTML = '';
|
node.innerHTML = '';
|
||||||
|
|
90
airtime_mvc/public/js/datatables/plugin/dataTables.ColReorder.js
Normal file → Executable file
90
airtime_mvc/public/js/datatables/plugin/dataTables.ColReorder.js
Normal file → Executable file
|
@ -1,6 +1,6 @@
|
||||||
/*
|
/*
|
||||||
* File: ColReorder.js
|
* File: ColReorder.js
|
||||||
* Version: 1.0.4
|
* Version: 1.0.5
|
||||||
* CVS: $Id$
|
* CVS: $Id$
|
||||||
* Description: Controls for column visiblity in DataTables
|
* Description: Controls for column visiblity in DataTables
|
||||||
* Author: Allan Jardine (www.sprymedia.co.uk)
|
* Author: Allan Jardine (www.sprymedia.co.uk)
|
||||||
|
@ -163,7 +163,11 @@ $.fn.dataTableExt.oApi.fnColReorder = function ( oSettings, iFrom, iTo )
|
||||||
/* Data column sorting (the column which the sort for a given column should take place on) */
|
/* Data column sorting (the column which the sort for a given column should take place on) */
|
||||||
for ( i=0, iLen=iCols ; i<iLen ; i++ )
|
for ( i=0, iLen=iCols ; i<iLen ; i++ )
|
||||||
{
|
{
|
||||||
oSettings.aoColumns[i].iDataSort = aiInvertMapping[ oSettings.aoColumns[i].iDataSort ];
|
oCol = oSettings.aoColumns[i];
|
||||||
|
for ( j=0, jLen=oCol.aDataSort.length ; j<jLen ; j++ )
|
||||||
|
{
|
||||||
|
oCol.aDataSort[j] = aiInvertMapping[ oCol.aDataSort[j] ];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Update the Get and Set functions for each column */
|
/* Update the Get and Set functions for each column */
|
||||||
|
@ -464,12 +468,9 @@ ColReorder.prototype = {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* State saving */
|
/* State saving */
|
||||||
this.s.dt.aoStateSave.push( {
|
this.s.dt.oApi._fnCallbackReg( this.s.dt, 'aoStateSaveParams', function (oS, oData) {
|
||||||
"fn": function (oS, sVal) {
|
that._fnStateSave.call( that, oData );
|
||||||
return that._fnStateSave.call( that, sVal );
|
}, "ColReorder_State" );
|
||||||
},
|
|
||||||
"sName": "ColReorder_State"
|
|
||||||
} );
|
|
||||||
|
|
||||||
/* An initial column order has been specified */
|
/* An initial column order has been specified */
|
||||||
var aiOrder = null;
|
var aiOrder = null;
|
||||||
|
@ -556,72 +557,41 @@ ColReorder.prototype = {
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function effectively replaces the state saving function in DataTables (this is needed
|
* Because we change the indexes of columns in the table, relative to their starting point
|
||||||
* because otherwise DataTables would state save the columns in their reordered state, not the
|
* we need to reorder the state columns to what they are at the starting point so we can
|
||||||
* original which is needed on first draw). This is sensitive to any changes in the DataTables
|
* then rearrange them again on state load!
|
||||||
* state saving method!
|
|
||||||
* @method _fnStateSave
|
* @method _fnStateSave
|
||||||
* @param string sCurrentVal
|
* @param object oState DataTables state
|
||||||
* @returns string JSON encoded cookie string for DataTables
|
* @returns string JSON encoded cookie string for DataTables
|
||||||
* @private
|
* @private
|
||||||
*/
|
*/
|
||||||
"_fnStateSave": function ( sCurrentVal )
|
"_fnStateSave": function ( oState )
|
||||||
{
|
{
|
||||||
var i, iLen, sTmp;
|
var i, iLen, aCopy, iOrigColumn;
|
||||||
var sValue = sCurrentVal.split('"aaSorting"')[0];
|
|
||||||
var a = [];
|
|
||||||
var oSettings = this.s.dt;
|
var oSettings = this.s.dt;
|
||||||
|
|
||||||
/* Sorting */
|
/* Sorting */
|
||||||
sValue += '"aaSorting":[ ';
|
for ( i=0 ; i<oState.aaSorting.length ; i++ )
|
||||||
for ( i=0 ; i<oSettings.aaSorting.length ; i++ )
|
|
||||||
{
|
{
|
||||||
sValue += '['+oSettings.aoColumns[ oSettings.aaSorting[i][0] ]._ColReorder_iOrigCol+
|
oState.aaSorting[i][0] = oSettings.aoColumns[ oState.aaSorting[i][0] ]._ColReorder_iOrigCol;
|
||||||
',"'+oSettings.aaSorting[i][1]+'"],';
|
|
||||||
}
|
}
|
||||||
sValue = sValue.substring(0, sValue.length-1);
|
|
||||||
sValue += "],";
|
aSearchCopy = $.extend( true, [], oState.aoSearchCols );
|
||||||
|
oState.ColReorder = [];
|
||||||
|
|
||||||
|
for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
|
||||||
|
{
|
||||||
|
iOrigColumn = oSettings.aoColumns[i]._ColReorder_iOrigCol;
|
||||||
|
|
||||||
/* Column filter */
|
/* Column filter */
|
||||||
for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
|
oState.aoSearchCols[ iOrigColumn ] = aSearchCopy[i];
|
||||||
{
|
|
||||||
a[ oSettings.aoColumns[i]._ColReorder_iOrigCol ] = {
|
|
||||||
"sSearch": encodeURIComponent(oSettings.aoPreSearchCols[i].sSearch),
|
|
||||||
"bRegex": !oSettings.aoPreSearchCols[i].bRegex
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
sValue += '"aaSearchCols":[ ';
|
|
||||||
for ( i=0 ; i<a.length ; i++ )
|
|
||||||
{
|
|
||||||
sValue += '["'+a[i].sSearch+'",'+a[i].bRegex+'],';
|
|
||||||
}
|
|
||||||
sValue = sValue.substring(0, sValue.length-1);
|
|
||||||
sValue += "],";
|
|
||||||
|
|
||||||
/* Visibility */
|
/* Visibility */
|
||||||
a = [];
|
oState.abVisCols[ iOrigColumn ] = oSettings.aoColumns[i].bVisible;
|
||||||
for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
|
|
||||||
{
|
|
||||||
a[ oSettings.aoColumns[i]._ColReorder_iOrigCol ] = oSettings.aoColumns[i].bVisible;
|
|
||||||
}
|
|
||||||
|
|
||||||
sValue += '"abVisCols":[ ';
|
|
||||||
for ( i=0 ; i<a.length ; i++ )
|
|
||||||
{
|
|
||||||
sValue += a[i]+",";
|
|
||||||
}
|
|
||||||
sValue = sValue.substring(0, sValue.length-1);
|
|
||||||
sValue += "],";
|
|
||||||
|
|
||||||
/* Column reordering */
|
/* Column reordering */
|
||||||
a = [];
|
oState.ColReorder.push( iOrigColumn );
|
||||||
for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ ) {
|
|
||||||
a.push( oSettings.aoColumns[i]._ColReorder_iOrigCol );
|
|
||||||
}
|
}
|
||||||
sValue += '"ColReorder":['+a.join(',')+']';
|
|
||||||
|
|
||||||
return sValue;
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
|
@ -944,7 +914,7 @@ ColReorder.prototype.CLASS = "ColReorder";
|
||||||
* @type String
|
* @type String
|
||||||
* @default As code
|
* @default As code
|
||||||
*/
|
*/
|
||||||
ColReorder.VERSION = "1.0.4";
|
ColReorder.VERSION = "1.0.5";
|
||||||
ColReorder.prototype.VERSION = ColReorder.VERSION;
|
ColReorder.prototype.VERSION = ColReorder.VERSION;
|
||||||
|
|
||||||
|
|
||||||
|
@ -960,7 +930,7 @@ ColReorder.prototype.VERSION = ColReorder.VERSION;
|
||||||
*/
|
*/
|
||||||
if ( typeof $.fn.dataTable == "function" &&
|
if ( typeof $.fn.dataTable == "function" &&
|
||||||
typeof $.fn.dataTableExt.fnVersionCheck == "function" &&
|
typeof $.fn.dataTableExt.fnVersionCheck == "function" &&
|
||||||
$.fn.dataTableExt.fnVersionCheck('1.8.0') )
|
$.fn.dataTableExt.fnVersionCheck('1.9.0') )
|
||||||
{
|
{
|
||||||
$.fn.dataTableExt.aoFeatures.push( {
|
$.fn.dataTableExt.aoFeatures.push( {
|
||||||
"fnInit": function( oDTSettings ) {
|
"fnInit": function( oDTSettings ) {
|
||||||
|
@ -981,7 +951,7 @@ if ( typeof $.fn.dataTable == "function" &&
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
alert( "Warning: ColReorder requires DataTables 1.8.0 or greater - www.datatables.net/download");
|
alert( "Warning: ColReorder requires DataTables 1.9.0 or greater - www.datatables.net/download");
|
||||||
}
|
}
|
||||||
|
|
||||||
})(jQuery, window, document);
|
})(jQuery, window, document);
|
6
airtime_mvc/public/js/datatables/plugin/dataTables.ColVis.js
Normal file → Executable file
6
airtime_mvc/public/js/datatables/plugin/dataTables.ColVis.js
Normal file → Executable file
|
@ -1,6 +1,6 @@
|
||||||
/*
|
/*
|
||||||
* File: ColVis.js
|
* File: ColVis.js
|
||||||
* Version: 1.0.7.dev
|
* Version: 1.0.7
|
||||||
* CVS: $Id$
|
* CVS: $Id$
|
||||||
* Description: Controls for column visiblity in DataTables
|
* Description: Controls for column visiblity in DataTables
|
||||||
* Author: Allan Jardine (www.sprymedia.co.uk)
|
* Author: Allan Jardine (www.sprymedia.co.uk)
|
||||||
|
@ -873,7 +873,7 @@ ColVis.prototype = {
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
* Alter the colspan on any fnOpen rows
|
||||||
*/
|
*/
|
||||||
"_fnAdjustOpenRows": function ()
|
"_fnAdjustOpenRows": function ()
|
||||||
{
|
{
|
||||||
|
@ -958,7 +958,7 @@ ColVis.prototype.CLASS = "ColVis";
|
||||||
* @type String
|
* @type String
|
||||||
* @default See code
|
* @default See code
|
||||||
*/
|
*/
|
||||||
ColVis.VERSION = "1.0.7.dev";
|
ColVis.VERSION = "1.0.7";
|
||||||
ColVis.prototype.VERSION = ColVis.VERSION;
|
ColVis.prototype.VERSION = ColVis.VERSION;
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue