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
131 lines
4.2 KiB
JavaScript
Executable File
Vendored
131 lines
4.2 KiB
JavaScript
Executable File
Vendored
/**
|
|
* This modification of DataTables' standard two button pagination controls
|
|
* adds a little animation effect to the paging action by redrawing the table
|
|
* multiple times for each event, each draw progressing by one row until the
|
|
* required point in the table is reached.
|
|
*
|
|
* @name Scrolling navigation
|
|
* @summary Show page changes as a redraw of the table, scrolling records.
|
|
* @author [Allan Jardine](http://sprymedia.co.uk)
|
|
*
|
|
* @example
|
|
* $(document).ready(function() {
|
|
* $('#example').dataTable( {
|
|
* "sPaginationType": "scrolling"
|
|
* } );
|
|
* } );
|
|
*/
|
|
|
|
|
|
/* Time between each scrolling frame */
|
|
$.fn.dataTableExt.oPagination.iTweenTime = 100;
|
|
|
|
$.fn.dataTableExt.oPagination.scrolling = {
|
|
"fnInit": function ( oSettings, nPaging, fnCallbackDraw )
|
|
{
|
|
var oLang = oSettings.oLanguage.oPaginate;
|
|
var oClasses = oSettings.oClasses;
|
|
var fnClickHandler = function ( e ) {
|
|
if ( oSettings.oApi._fnPageChange( oSettings, e.data.action ) )
|
|
{
|
|
fnCallbackDraw( oSettings );
|
|
}
|
|
};
|
|
|
|
var sAppend = (!oSettings.bJUI) ?
|
|
'<a class="'+oSettings.oClasses.sPagePrevDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button">'+oLang.sPrevious+'</a>'+
|
|
'<a class="'+oSettings.oClasses.sPageNextDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button">'+oLang.sNext+'</a>'
|
|
:
|
|
'<a class="'+oSettings.oClasses.sPagePrevDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button"><span class="'+oSettings.oClasses.sPageJUIPrev+'"></span></a>'+
|
|
'<a class="'+oSettings.oClasses.sPageNextDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button"><span class="'+oSettings.oClasses.sPageJUINext+'"></span></a>';
|
|
$(nPaging).append( sAppend );
|
|
|
|
var els = $('a', nPaging);
|
|
var nPrevious = els[0],
|
|
nNext = els[1];
|
|
|
|
oSettings.oApi._fnBindAction( nPrevious, {action: "previous"}, function() {
|
|
/* Disallow paging event during a current paging event */
|
|
if ( typeof oSettings.iPagingLoopStart != 'undefined' && oSettings.iPagingLoopStart != -1 )
|
|
{
|
|
return;
|
|
}
|
|
|
|
oSettings.iPagingLoopStart = oSettings._iDisplayStart;
|
|
oSettings.iPagingEnd = oSettings._iDisplayStart - oSettings._iDisplayLength;
|
|
|
|
/* Correct for underrun */
|
|
if ( oSettings.iPagingEnd < 0 )
|
|
{
|
|
oSettings.iPagingEnd = 0;
|
|
}
|
|
|
|
var iTween = $.fn.dataTableExt.oPagination.iTweenTime;
|
|
var innerLoop = function () {
|
|
if ( oSettings.iPagingLoopStart > oSettings.iPagingEnd ) {
|
|
oSettings.iPagingLoopStart--;
|
|
oSettings._iDisplayStart = oSettings.iPagingLoopStart;
|
|
fnCallbackDraw( oSettings );
|
|
setTimeout( function() { innerLoop(); }, iTween );
|
|
} else {
|
|
oSettings.iPagingLoopStart = -1;
|
|
}
|
|
};
|
|
innerLoop();
|
|
} );
|
|
|
|
oSettings.oApi._fnBindAction( nNext, {action: "next"}, function() {
|
|
/* Disallow paging event during a current paging event */
|
|
if ( typeof oSettings.iPagingLoopStart != 'undefined' && oSettings.iPagingLoopStart != -1 )
|
|
{
|
|
return;
|
|
}
|
|
|
|
oSettings.iPagingLoopStart = oSettings._iDisplayStart;
|
|
|
|
/* Make sure we are not over running the display array */
|
|
if ( oSettings._iDisplayStart + oSettings._iDisplayLength < oSettings.fnRecordsDisplay() )
|
|
{
|
|
oSettings.iPagingEnd = oSettings._iDisplayStart + oSettings._iDisplayLength;
|
|
}
|
|
|
|
var iTween = $.fn.dataTableExt.oPagination.iTweenTime;
|
|
var innerLoop = function () {
|
|
if ( oSettings.iPagingLoopStart < oSettings.iPagingEnd ) {
|
|
oSettings.iPagingLoopStart++;
|
|
oSettings._iDisplayStart = oSettings.iPagingLoopStart;
|
|
fnCallbackDraw( oSettings );
|
|
setTimeout( function() { innerLoop(); }, iTween );
|
|
} else {
|
|
oSettings.iPagingLoopStart = -1;
|
|
}
|
|
};
|
|
innerLoop();
|
|
} );
|
|
},
|
|
|
|
"fnUpdate": function ( oSettings, fnCallbackDraw )
|
|
{
|
|
if ( !oSettings.aanFeatures.p )
|
|
{
|
|
return;
|
|
}
|
|
|
|
/* Loop over each instance of the pager */
|
|
var an = oSettings.aanFeatures.p;
|
|
for ( var i=0, iLen=an.length ; i<iLen ; i++ )
|
|
{
|
|
if ( an[i].childNodes.length !== 0 )
|
|
{
|
|
an[i].childNodes[0].className =
|
|
( oSettings._iDisplayStart === 0 ) ?
|
|
oSettings.oClasses.sPagePrevDisabled : oSettings.oClasses.sPagePrevEnabled;
|
|
|
|
an[i].childNodes[1].className =
|
|
( oSettings.fnDisplayEnd() == oSettings.fnRecordsDisplay() ) ?
|
|
oSettings.oClasses.sPageNextDisabled : oSettings.oClasses.sPageNextEnabled;
|
|
}
|
|
}
|
|
}
|
|
};
|