Show More
Commit Description:
remove unnecessary gems
Commit Description:
remove unnecessary gems
File last commit:
Show/Diff file:
Action:
vendor/javascript/datatables/Editor-2.0.9/js/editor.foundation.js | 202 lines | 4.1 KiB | application/javascript | JavascriptLexer |
datatable now works
r866
/*! Foundation integration for DataTables' Editor
* ©2015 SpryMedia Ltd - datatables.net/license
*/
(function( factory ){
if ( typeof define === 'function' && define.amd ) {
// AMD
define( ['jquery', 'datatables.net-zf', 'datatables.net-editor'], function ( $ ) {
return factory( $, window, document );
} );
}
else if ( typeof exports === 'object' ) {
// CommonJS
module.exports = function (root, $) {
if ( ! root ) {
// CommonJS environments without a window global must pass a
// root. This will give an error otherwise
root = window;
}
if ( ! $ ) {
$ = typeof window !== 'undefined' ? // jQuery's factory checks for a global window
require('jquery') :
require('jquery')( root );
}
if ( ! $.fn.dataTable ) {
require('datatables.net-zf')(root, $);
}
if ( ! $.fn.dataTable ) {
require('datatables.net-editor')(root, $);
}
return factory( $, root, root.document );
};
}
else {
// Browser
factory( jQuery, window, document );
}
}(function( $, window, document, undefined ) {
'use strict';
var DataTable = $.fn.dataTable;
(function( factory ){
if ( typeof define === 'function' && define.amd ) {
// AMD
define( ['jquery', 'datatables.net-zf', 'datatables.net-editor'], function ( $ ) {
return factory( $, window, document );
} );
}
else if ( typeof exports === 'object' ) {
// CommonJS
module.exports = function (root, $) {
if ( ! root ) {
root = window;
}
if ( ! $ || ! $.fn.dataTable ) {
$ = require('datatables.net-zf')(root, $).$;
}
if ( ! $.fn.dataTable.Editor ) {
require('datatables.net-editor')(root, $);
}
return factory( $, root, root.document );
};
}
else {
// Browser
factory( jQuery, window, document );
}
}(function( $, window, document, undefined ) {
'use strict';
var DataTable = $.fn.dataTable;
/*
* Set the default display controller to be our foundation control
*/
DataTable.Editor.defaults.display = "foundation";
/*
* Change the default classes from Editor to be classes for Foundation
*/
$.extend( true, $.fn.dataTable.Editor.classes, {
field: {
wrapper: "DTE_Field row",
label: "small-4 columns inline",
input: "small-8 columns",
error: "error",
multiValue: "panel radius multi-value",
multiInfo: "small",
multiRestore: "panel radius multi-restore",
"msg-labelInfo": "label secondary",
"msg-info": "label secondary",
"msg-message": "label secondary",
"msg-error": "label alert"
},
form: {
button: "button small",
buttonInternal: "button small"
}
} );
/*
* Foundation display controller - this is effectively a proxy to the Foundation
* modal control.
*/
var shown = false;
var reveal;
const dom = {
content: $(
'<div class="reveal reveal-modal DTED" data-reveal></div>'
),
close: $('<button class="close close-button">&times;</div>')
};
DataTable.Editor.display.foundation = $.extend( true, {}, DataTable.Editor.models.displayController, {
init: function ( dte ) {
if (! reveal) {
reveal = new window.Foundation.Reveal( dom.content, {
closeOnClick: false
} );
}
return DataTable.Editor.display.foundation;
},
open: function ( dte, append, callback ) {
var content = dom.content;
content.children().detach();
content.append( append );
content.prepend( dom.close );
dom.close
.attr('title', dte.i18n.close)
.off('click.dte-zf')
.on('click.dte-zf', function () {
dte.close('icon');
});
$(document)
.off('click.dte-zf')
.on('click.dte-zf', 'div.reveal-modal-bg, div.reveal-overlay', function (e) {
if ( $(e.target).closest(dom.content).length ) {
return;
}
dte.background();
} );
if ( shown ) {
if ( callback ) {
callback();
}
return;
}
shown = true;
$(dom.content)
.one('open.zf.reveal', function () {
if ( callback ) {
callback();
}
});
reveal.open();
},
close: function ( dte, callback ) {
if (shown) {
reveal.close();
shown = false;
}
if ( callback ) {
callback();
}
},
node: function ( dte ) {
return dom.content[0];
}
} );
return DataTable.Editor;
}));
return Editor;
}));