mirror of
https://gitlab.com/signalytic/client-external/streamline/streamline-emr.git
synced 2026-09-12 03:01:32 +00:00
The official image from streamline does not currently work for the arm64 platform. As a temporary measure, the source code and docker build scripts have been lifted from the official images and are used to build locally. Some additional modifications are made to reduce overall image size, these are documented in docker/README.md
187 lines
4.2 KiB
JavaScript
Executable File
Vendored
187 lines
4.2 KiB
JavaScript
Executable File
Vendored
/*! DataTables Bootstrap 3 integration
|
|
* ©2011-2014 SpryMedia Ltd - datatables.net/license
|
|
*/
|
|
|
|
/**
|
|
* DataTables integration for Bootstrap 3. This requires Bootstrap 3 and
|
|
* DataTables 1.10 or newer.
|
|
*
|
|
* This file sets the defaults and adds options to DataTables to style its
|
|
* controls using Bootstrap. See http://datatables.net/manual/styling/bootstrap
|
|
* for further information.
|
|
*/
|
|
(function(window, document, undefined){
|
|
|
|
var factory = function( $, DataTable ) {
|
|
"use strict";
|
|
|
|
|
|
/* Set the defaults for DataTables initialisation */
|
|
$.extend( true, DataTable.defaults, {
|
|
dom:
|
|
"<'row'<'col-sm-6'l><'col-sm-6'f>>" +
|
|
"<'row'<'col-sm-12'tr>>" +
|
|
"<'row'<'col-sm-6'i><'col-sm-6'p>>",
|
|
renderer: 'bootstrap'
|
|
} );
|
|
|
|
|
|
/* Default class modification */
|
|
$.extend( DataTable.ext.classes, {
|
|
sWrapper: "dataTables_wrapper form-inline dt-bootstrap",
|
|
sFilterInput: "form-control input-sm",
|
|
sLengthSelect: "form-control input-sm"
|
|
} );
|
|
|
|
|
|
/* Bootstrap paging button renderer */
|
|
DataTable.ext.renderer.pageButton.bootstrap = function ( settings, host, idx, buttons, page, pages ) {
|
|
var api = new DataTable.Api( settings );
|
|
var classes = settings.oClasses;
|
|
var lang = settings.oLanguage.oPaginate;
|
|
var btnDisplay, btnClass;
|
|
|
|
var attach = function( container, buttons ) {
|
|
var i, ien, node, button;
|
|
var clickHandler = function ( e ) {
|
|
e.preventDefault();
|
|
if ( !$(e.currentTarget).hasClass('disabled') ) {
|
|
api.page( e.data.action ).draw( false );
|
|
}
|
|
};
|
|
|
|
for ( i=0, ien=buttons.length ; i<ien ; i++ ) {
|
|
button = buttons[i];
|
|
|
|
if ( $.isArray( button ) ) {
|
|
attach( container, button );
|
|
}
|
|
else {
|
|
btnDisplay = '';
|
|
btnClass = '';
|
|
|
|
switch ( button ) {
|
|
case 'ellipsis':
|
|
btnDisplay = '…';
|
|
btnClass = 'disabled';
|
|
break;
|
|
|
|
case 'first':
|
|
btnDisplay = lang.sFirst;
|
|
btnClass = button + (page > 0 ?
|
|
'' : ' disabled');
|
|
break;
|
|
|
|
case 'previous':
|
|
btnDisplay = lang.sPrevious;
|
|
btnClass = button + (page > 0 ?
|
|
'' : ' disabled');
|
|
break;
|
|
|
|
case 'next':
|
|
btnDisplay = lang.sNext;
|
|
btnClass = button + (page < pages-1 ?
|
|
'' : ' disabled');
|
|
break;
|
|
|
|
case 'last':
|
|
btnDisplay = lang.sLast;
|
|
btnClass = button + (page < pages-1 ?
|
|
'' : ' disabled');
|
|
break;
|
|
|
|
default:
|
|
btnDisplay = button + 1;
|
|
btnClass = page === button ?
|
|
'active' : '';
|
|
break;
|
|
}
|
|
|
|
if ( btnDisplay ) {
|
|
node = $('<li>', {
|
|
'class': classes.sPageButton+' '+btnClass,
|
|
'aria-controls': settings.sTableId,
|
|
'tabindex': settings.iTabIndex,
|
|
'id': idx === 0 && typeof button === 'string' ?
|
|
settings.sTableId +'_'+ button :
|
|
null
|
|
} )
|
|
.append( $('<a>', {
|
|
'href': '#'
|
|
} )
|
|
.html( btnDisplay )
|
|
)
|
|
.appendTo( container );
|
|
|
|
settings.oApi._fnBindAction(
|
|
node, {action: button}, clickHandler
|
|
);
|
|
}
|
|
}
|
|
}
|
|
};
|
|
|
|
attach(
|
|
$(host).empty().html('<ul class="pagination"/>').children('ul'),
|
|
buttons
|
|
);
|
|
};
|
|
|
|
|
|
/*
|
|
* TableTools Bootstrap compatibility
|
|
* Required TableTools 2.1+
|
|
*/
|
|
if ( DataTable.TableTools ) {
|
|
// Set the classes that TableTools uses to something suitable for Bootstrap
|
|
$.extend( true, DataTable.TableTools.classes, {
|
|
"container": "DTTT btn-group",
|
|
"buttons": {
|
|
"normal": "btn btn-default",
|
|
"disabled": "disabled"
|
|
},
|
|
"collection": {
|
|
"container": "DTTT_dropdown dropdown-menu",
|
|
"buttons": {
|
|
"normal": "",
|
|
"disabled": "disabled"
|
|
}
|
|
},
|
|
"print": {
|
|
"info": "DTTT_print_info"
|
|
},
|
|
"select": {
|
|
"row": "active"
|
|
}
|
|
} );
|
|
|
|
// Have the collection use a bootstrap compatible drop down
|
|
$.extend( true, DataTable.TableTools.DEFAULTS.oTags, {
|
|
"collection": {
|
|
"container": "ul",
|
|
"button": "li",
|
|
"liner": "a"
|
|
}
|
|
} );
|
|
}
|
|
|
|
}; // /factory
|
|
|
|
|
|
// Define as an AMD module if possible
|
|
if ( typeof define === 'function' && define.amd ) {
|
|
define( ['jquery', 'datatables'], factory );
|
|
}
|
|
else if ( typeof exports === 'object' ) {
|
|
// Node/CommonJS
|
|
factory( require('jquery'), require('datatables') );
|
|
}
|
|
else if ( jQuery ) {
|
|
// Otherwise simply initialise as normal, stopping multiple evaluation
|
|
factory( jQuery, jQuery.fn.dataTable );
|
|
}
|
|
|
|
|
|
})(window, document);
|
|
|