tablesorter submodule added
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
# Auto detect text files and perform LF normalization
|
||||||
|
* text=auto
|
||||||
|
|
||||||
|
# Custom for Visual Studio
|
||||||
|
*.cs diff=csharp
|
||||||
|
*.sln merge=union
|
||||||
|
*.csproj merge=union
|
||||||
|
*.vbproj merge=union
|
||||||
|
*.fsproj merge=union
|
||||||
|
*.dbproj merge=union
|
||||||
|
|
||||||
|
# Standard to msysgit
|
||||||
|
*.doc diff=astextplain
|
||||||
|
*.DOC diff=astextplain
|
||||||
|
*.docx diff=astextplain
|
||||||
|
*.DOCX diff=astextplain
|
||||||
|
*.dot diff=astextplain
|
||||||
|
*.DOT diff=astextplain
|
||||||
|
*.pdf diff=astextplain
|
||||||
|
*.PDF diff=astextplain
|
||||||
|
*.rtf diff=astextplain
|
||||||
|
*.RTF diff=astextplain
|
||||||
|
*.md diss=astextplain
|
||||||
165
.gitignore
vendored
Normal file
@ -0,0 +1,165 @@
|
|||||||
|
#################
|
||||||
|
## Eclipse
|
||||||
|
#################
|
||||||
|
|
||||||
|
*.pydevproject
|
||||||
|
.project
|
||||||
|
.metadata
|
||||||
|
bin/
|
||||||
|
tmp/
|
||||||
|
*_test*.*
|
||||||
|
*.tmp
|
||||||
|
*.bak
|
||||||
|
*.swp
|
||||||
|
*~.nib
|
||||||
|
local.properties
|
||||||
|
.classpath
|
||||||
|
.settings/
|
||||||
|
.loadpath
|
||||||
|
|
||||||
|
# External tool builders
|
||||||
|
.externalToolBuilders/
|
||||||
|
|
||||||
|
# Locally stored "Eclipse launch configurations"
|
||||||
|
*.launch
|
||||||
|
|
||||||
|
# CDT-specific
|
||||||
|
.cproject
|
||||||
|
|
||||||
|
# PDT-specific
|
||||||
|
.buildpath
|
||||||
|
|
||||||
|
|
||||||
|
#################
|
||||||
|
## Visual Studio
|
||||||
|
#################
|
||||||
|
|
||||||
|
## Ignore Visual Studio temporary files, build results, and
|
||||||
|
## files generated by popular Visual Studio add-ons.
|
||||||
|
|
||||||
|
# User-specific files
|
||||||
|
*.suo
|
||||||
|
*.user
|
||||||
|
*.sln.docstates
|
||||||
|
|
||||||
|
# Build results
|
||||||
|
[Dd]ebug/
|
||||||
|
[Rr]elease/
|
||||||
|
node_modules/
|
||||||
|
*_i.c
|
||||||
|
*_p.c
|
||||||
|
*.ilk
|
||||||
|
*.log
|
||||||
|
*.meta
|
||||||
|
*.obj
|
||||||
|
*.pch
|
||||||
|
*.pdb
|
||||||
|
*.pgc
|
||||||
|
*.pgd
|
||||||
|
*.rsp
|
||||||
|
*.sbr
|
||||||
|
*.tlb
|
||||||
|
*.tli
|
||||||
|
*.tlh
|
||||||
|
*.tmp
|
||||||
|
*.vspscc
|
||||||
|
.builds
|
||||||
|
*.dotCover
|
||||||
|
|
||||||
|
## TODO: If you have NuGet Package Restore enabled, uncomment this
|
||||||
|
#packages/
|
||||||
|
|
||||||
|
# Visual C++ cache files
|
||||||
|
ipch/
|
||||||
|
*.aps
|
||||||
|
*.ncb
|
||||||
|
*.opensdf
|
||||||
|
*.sdf
|
||||||
|
|
||||||
|
# Visual Studio profiler
|
||||||
|
*.psess
|
||||||
|
*.vsp
|
||||||
|
|
||||||
|
# ReSharper is a .NET coding add-in
|
||||||
|
_ReSharper*
|
||||||
|
|
||||||
|
# Installshield output folder
|
||||||
|
[Ee]xpress
|
||||||
|
|
||||||
|
# DocProject is a documentation generator add-in
|
||||||
|
DocProject/buildhelp/
|
||||||
|
DocProject/Help/*.HxT
|
||||||
|
DocProject/Help/*.HxC
|
||||||
|
DocProject/Help/*.hhc
|
||||||
|
DocProject/Help/*.hhk
|
||||||
|
DocProject/Help/*.hhp
|
||||||
|
DocProject/Help/Html2
|
||||||
|
DocProject/Help/html
|
||||||
|
|
||||||
|
# Click-Once directory
|
||||||
|
publish
|
||||||
|
|
||||||
|
# Others
|
||||||
|
[Bb]in
|
||||||
|
[Oo]bj
|
||||||
|
sql
|
||||||
|
TestResults
|
||||||
|
*.Cache
|
||||||
|
ClientBin
|
||||||
|
stylecop.*
|
||||||
|
~$*
|
||||||
|
*.dbmdl
|
||||||
|
Generated_Code #added for RIA/Silverlight projects
|
||||||
|
|
||||||
|
# Backup & report files from converting an old project file to a newer
|
||||||
|
# Visual Studio version. Backup files are not needed, because we have git ;-)
|
||||||
|
_UpgradeReport_Files/
|
||||||
|
Backup*/
|
||||||
|
UpgradeLog*.XML
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
############
|
||||||
|
## Windows
|
||||||
|
############
|
||||||
|
|
||||||
|
# Windows image file caches
|
||||||
|
Thumbs.db
|
||||||
|
|
||||||
|
# Folder config file
|
||||||
|
Desktop.ini
|
||||||
|
|
||||||
|
|
||||||
|
#############
|
||||||
|
## Python
|
||||||
|
#############
|
||||||
|
|
||||||
|
*.py[co]
|
||||||
|
|
||||||
|
# Packages
|
||||||
|
*.egg
|
||||||
|
*.egg-info
|
||||||
|
build
|
||||||
|
eggs
|
||||||
|
parts
|
||||||
|
bin
|
||||||
|
var
|
||||||
|
sdist
|
||||||
|
develop-eggs
|
||||||
|
.installed.cfg
|
||||||
|
|
||||||
|
# Installer logs
|
||||||
|
pip-log.txt
|
||||||
|
|
||||||
|
# Unit test / coverage reports
|
||||||
|
.coverage
|
||||||
|
.tox
|
||||||
|
|
||||||
|
#Translations
|
||||||
|
*.mo
|
||||||
|
|
||||||
|
#Mr Developer
|
||||||
|
.mr.developer.cfg
|
||||||
|
|
||||||
|
# Mac crap
|
||||||
|
.DS_Store
|
||||||
45
CONTRIBUTING.md
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
# Contributing to tablesorter (FORK)
|
||||||
|
|
||||||
|
1. [Getting Involved](#getting-involved)
|
||||||
|
2. [How To Report issues](#how-to-report-issues)
|
||||||
|
3. [Contributing Code](#contributing-code)
|
||||||
|
|
||||||
|
## Getting Involved
|
||||||
|
|
||||||
|
There are a number of ways to get involved with the development of this fork of Tablesorter. Even if you've never contributed to an Open Source project before, we're always looking for help identifying issues.
|
||||||
|
|
||||||
|
## How to Report issues, or make requests.
|
||||||
|
|
||||||
|
* First off make sure it's a new issue. Search the [FAQ](https://github.com/Mottie/tablesorter/wiki/FAQ), [documents](http://mottie.github.io/tablesorter/docs/) and the [issues](https://github.com/Mottie/tablesorter/issues).
|
||||||
|
* If it's an existing issue or feature request, and you want to show that it is also a concern for you. Add a comment!
|
||||||
|
* If it turns out to not be an issue, but a question instead:
|
||||||
|
* Please don't open a new issue.
|
||||||
|
* Jump on out freenode.net IRC channel: `#tablesorter`.
|
||||||
|
* Ask the question on [Stackoverflow](https://stackoverflow.com/questions/tagged/tablesorter) (tablesorter or jQuery tag).
|
||||||
|
* If you do open a new issue:
|
||||||
|
* If the issue only occurs in a particular browser or version of jQuery, that would be awesome to know!
|
||||||
|
* Please include any *relevant* code (posting the entire page usually isn't that helpful).
|
||||||
|
* Add if there are any errors showing in the console (press F12 in the browser and go to the console tab).
|
||||||
|
* Include screenshots, animated gifs, videos (check out [screenr](https://www.screenr.com/)) or funny cat pictures. You never know what might help!
|
||||||
|
|
||||||
|
## Contributing Code
|
||||||
|
|
||||||
|
* Installation:
|
||||||
|
* Please see the [Customize](https://github.com/Mottie/tablesorter/wiki/Customize) wiki page for specifics on how to install the necessary modules & create a custom build.
|
||||||
|
* If you aren't comfortable using grunt or making a build file, you can go ahead and just share the changes.
|
||||||
|
* Style Guide:
|
||||||
|
* We're not too strict, just try to follow the style that is already being used in the code.
|
||||||
|
* When naming variables:
|
||||||
|
* Use names that describe it's contents. I'm guilty of naming things `t` and `i`, but I'm slowly trying to rename them to make reading code and finding the variable in the code easier.
|
||||||
|
* Name jQuery objects with a leading `$`, e.g. `var $table = $('table');`
|
||||||
|
* We like semicolons! Jshint will yell at you if you don't use them.
|
||||||
|
* We like single quotes! It's OCD man!
|
||||||
|
* We like tabs!
|
||||||
|
* We like pizza!
|
||||||
|
* Pull request:
|
||||||
|
* Before opening a pull request, please make sure that your code is on a *fork* of the master. This is really for your own convenience: it's easy for us to accept your pull request from your master branch, but it's problematic for your fork when you want to pull the changes back and your master branch has diverged from upstream's master branch.
|
||||||
|
* Add unit tests - tablesorter is still missing a lot of unit tests, so adding tests for your contribution would be a tremendous help!
|
||||||
|
* Also, make sure to test your changes!
|
||||||
|
* Use `grunt test` ([ref](https://github.com/Mottie/tablesorter/wiki/Customize#testing-a-build))
|
||||||
|
* If you aren't comfortable with using grunt, copy, then paste your code into [jsHint](http://jshint.com/) to help find any problems with the changes.
|
||||||
|
* There is no need to open an issue, then create a pull request. Just create the pull request and add any comments about your changes there.
|
||||||
399
Gruntfile.js
Normal file
@ -0,0 +1,399 @@
|
|||||||
|
/*global module:false*/
|
||||||
|
module.exports = function( grunt ) {
|
||||||
|
'use strict';
|
||||||
|
|
||||||
|
var pkg = grunt.file.readJSON( 'package.json' ),
|
||||||
|
tasks,
|
||||||
|
widgetFilePrefix,
|
||||||
|
widgetFileSuffix,
|
||||||
|
|
||||||
|
defaults = {
|
||||||
|
dependencies : {
|
||||||
|
widgets: {
|
||||||
|
'saveSort resizable pager filter columnSelector' : 'storage',
|
||||||
|
'filter-formatter-html5 filter-formatter-jui filter-formatter-select2' : 'filter'
|
||||||
|
// 'stickyHeaders' : 'addResizeEvent' // included with stickyHeaders widget (for now)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
standardWidgets: [
|
||||||
|
'storage', // req by saveSort; optional in others
|
||||||
|
'uitheme',
|
||||||
|
'columns',
|
||||||
|
'filter',
|
||||||
|
'stickyHeaders',
|
||||||
|
'resizable',
|
||||||
|
'saveSort'
|
||||||
|
// 'addResizeEvent', // included with stickyHeaders widget
|
||||||
|
// 'zebra' // included in core
|
||||||
|
],
|
||||||
|
standardWidgetFileName: 'jquery.tablesorter.widgets.js',
|
||||||
|
wrappers : {
|
||||||
|
widgetPrefix: 'js/widgets/widget-',
|
||||||
|
widgetSuffix: '.js',
|
||||||
|
parserPrefix: 'js/parsers/parser-',
|
||||||
|
parserSuffix: '.js'
|
||||||
|
},
|
||||||
|
wrapperUMD: {
|
||||||
|
// tablesorter core
|
||||||
|
coreBanner: '(function(factory) {\n' +
|
||||||
|
" if (typeof define === 'function' && define.amd) {\n" +
|
||||||
|
" define(['jquery'], factory);\n" +
|
||||||
|
" } else if (typeof module === 'object' && typeof module.exports === 'object') {\n" +
|
||||||
|
" module.exports = factory(require('jquery'));\n" +
|
||||||
|
' } else {\n' +
|
||||||
|
' factory(jQuery);\n' +
|
||||||
|
' }\n' +
|
||||||
|
'}(function($) {\n\n',
|
||||||
|
// widgets wrapper & combined wrapper - may need a separate entry when this wrapper is redefined to make
|
||||||
|
// widgets a dependency of the core (see https://github.com/Mottie/tablesorter/issues/855)
|
||||||
|
banner: '<%= pkg.banner %>/* Includes widgets ( <%= pkg.selectedWidgets %> <%= pkg.selectedParsers %>) */\n' +
|
||||||
|
'(function(factory) {\n' +
|
||||||
|
" if (typeof define === 'function' && define.amd) {\n" +
|
||||||
|
" define(['jquery'], factory);\n" +
|
||||||
|
" } else if (typeof module === 'object' && typeof module.exports === 'object') {\n" +
|
||||||
|
" module.exports = factory(require('jquery'));\n" +
|
||||||
|
' } else {\n' +
|
||||||
|
' factory(jQuery);\n' +
|
||||||
|
' }\n' +
|
||||||
|
'}(function($) {\n\n',
|
||||||
|
footer: '\nreturn $.tablesorter;\n}));\n'
|
||||||
|
},
|
||||||
|
noModBanner: '/*** This file is dynamically generated ***\n' +
|
||||||
|
'█████▄ ▄████▄ █████▄ ▄████▄ ██████ ███████▄ ▄████▄ █████▄ ██ ██████ ██ ██\n' +
|
||||||
|
'██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██\n' +
|
||||||
|
'██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██▀▀ ▀▀▀▀██\n' +
|
||||||
|
'█████▀ ▀████▀ ██ ██ ▀████▀ ██ ██ ██ ██ ▀████▀ █████▀ ██ ██ █████▀\n*/\n'
|
||||||
|
},
|
||||||
|
|
||||||
|
// example widgets = [ 'pager', 'column', 'filter', 'stickyHeaders' ];
|
||||||
|
addWidgetDependencies = function( widgets ) {
|
||||||
|
var indx, dep,
|
||||||
|
maxDeps = 40, // just in case (there are currently 27 widgets)
|
||||||
|
len = widgets.length,
|
||||||
|
deps = defaults.dependencies.widgets;
|
||||||
|
for ( dep in deps ) {
|
||||||
|
if ( typeof dep === 'string' ) {
|
||||||
|
for ( indx = 0; indx < len; indx++ ) {
|
||||||
|
// make sure indexOf is not matching 'column' instead of 'columnSelector' with surrounding spaces
|
||||||
|
if ( ( ' ' + dep + ' ' ).indexOf( ' ' + widgets[indx] + ' ' ) >= 0 && widgets.indexOf( deps[ dep ] ) < 0 ) {
|
||||||
|
widgets.push( deps[ dep ] );
|
||||||
|
// keep checking newly added widgets, in case 'filter' is added and 'storage' hasn't been
|
||||||
|
if ( len < maxDeps ) { len++; }
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return widgets;
|
||||||
|
},
|
||||||
|
formFileNames = function() {
|
||||||
|
var wrap = defaults.wrappers;
|
||||||
|
// add widget path & file extension
|
||||||
|
pkg.processedWidgets = ( wrap.widgetPrefix +
|
||||||
|
pkg.selectedWidgets.join( wrap.widgetSuffix + ',' + wrap.widgetPrefix ) +
|
||||||
|
wrap.widgetSuffix ).split( ',' );
|
||||||
|
console.info( 'Creating a widgets file with: ' + pkg.selectedWidgets.join(', ') );
|
||||||
|
|
||||||
|
if ( pkg.selectedParsers ) {
|
||||||
|
// parser path & file extension
|
||||||
|
pkg.processedParsers = ( wrap.parserPrefix +
|
||||||
|
pkg.selectedParsers.join( wrap.parserSuffix + ',' + wrap.parserPrefix ) +
|
||||||
|
wrap.parserSuffix ).split( ',' );
|
||||||
|
console.info( 'Creating a combined file with selected widgets & these parsers: ' + pkg.selectedParsers.join(', ') );
|
||||||
|
// make this look nice for the banner
|
||||||
|
pkg.selectedParsers = ') & parsers ( ' + pkg.selectedParsers + ' ';
|
||||||
|
}
|
||||||
|
console.info( pkg.processedParsers );
|
||||||
|
};
|
||||||
|
|
||||||
|
// minified banner template - updated ##/##/20## (v2.##.##)
|
||||||
|
pkg.banner = '/*! <%= pkg.name %> (FORK) - updated ' +
|
||||||
|
'<%= grunt.template.today("mm-dd-yyyy") %> (v<%= pkg.version %>)*/\n';
|
||||||
|
|
||||||
|
pkg.buildWidget = defaults.standardWidgetFileName;
|
||||||
|
pkg.buildCombined = 'jquery.tablesorter.combined.js';
|
||||||
|
pkg.processedParsers = '!js/parsers/*.js';
|
||||||
|
|
||||||
|
// Project configuration.
|
||||||
|
grunt.initConfig({
|
||||||
|
pkg: pkg,
|
||||||
|
|
||||||
|
clean: {
|
||||||
|
build: {
|
||||||
|
src: [ 'dist/**/**/**/*', 'dist/**/**/*', 'dist/**/*', 'dist' ]
|
||||||
|
},
|
||||||
|
css: {
|
||||||
|
src: [ 'dist/css/*.css', '!dist/css/*.min.css' ]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
copy: {
|
||||||
|
css: {
|
||||||
|
files : [{
|
||||||
|
expand: true,
|
||||||
|
dot: true,
|
||||||
|
flatten: true,
|
||||||
|
src: [ 'css/*.css', 'addons/pager/*.css' ],
|
||||||
|
dest: 'dist/css/',
|
||||||
|
rename: function( dest, src ) {
|
||||||
|
if ( /black-ice/.test( src ) ) {
|
||||||
|
src = src.replace( /-/, '' );
|
||||||
|
}
|
||||||
|
return dest + src;
|
||||||
|
}
|
||||||
|
}]
|
||||||
|
},
|
||||||
|
less: {
|
||||||
|
expand: true,
|
||||||
|
flatten: true,
|
||||||
|
src: 'css/*.less',
|
||||||
|
dest: 'dist/css/less/'
|
||||||
|
},
|
||||||
|
images: {
|
||||||
|
expand: true,
|
||||||
|
flatten: true,
|
||||||
|
src: [ 'addons/pager/icons/*', 'css/images/*' ],
|
||||||
|
dest: 'dist/css/images/'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
concat: {
|
||||||
|
main: {
|
||||||
|
options: {
|
||||||
|
banner: defaults.wrapperUMD.coreBanner,
|
||||||
|
footer: defaults.wrapperUMD.footer
|
||||||
|
},
|
||||||
|
src: [ 'js/jquery.tablesorter.js' ],
|
||||||
|
dest: 'dist/js/jquery.tablesorter.js'
|
||||||
|
},
|
||||||
|
widgets: {
|
||||||
|
options: {
|
||||||
|
banner: defaults.wrapperUMD.banner,
|
||||||
|
footer: defaults.wrapperUMD.footer
|
||||||
|
},
|
||||||
|
src: [
|
||||||
|
'<%= pkg.processedWidgets %>',
|
||||||
|
'!js/widgets/_test-*.js',
|
||||||
|
'!js/widgets/*.min.js'
|
||||||
|
],
|
||||||
|
dest: 'dist/js/<%= pkg.buildWidget %>'
|
||||||
|
},
|
||||||
|
everything: {
|
||||||
|
options: {
|
||||||
|
banner: defaults.wrapperUMD.banner,
|
||||||
|
footer: defaults.wrapperUMD.footer
|
||||||
|
},
|
||||||
|
src: [
|
||||||
|
'js/jquery.tablesorter.js',
|
||||||
|
'<%= pkg.processedWidgets %>',
|
||||||
|
'<%= pkg.processedParsers %>',
|
||||||
|
'!js/widgets/_test-*.js',
|
||||||
|
'!js/widgets/*.min.js'
|
||||||
|
],
|
||||||
|
dest: 'dist/js/<%= pkg.buildCombined %>'
|
||||||
|
},
|
||||||
|
// keep all the existing jsFiddle demos from breaking
|
||||||
|
copybackWidgets: {
|
||||||
|
options: {
|
||||||
|
banner: defaults.noModBanner
|
||||||
|
},
|
||||||
|
src : ['dist/js/<%= pkg.buildWidget %>'],
|
||||||
|
dest: 'js/<%= pkg.buildWidget %>'
|
||||||
|
},
|
||||||
|
copybackCombined: {
|
||||||
|
options: {
|
||||||
|
banner: defaults.noModBanner
|
||||||
|
},
|
||||||
|
src : ['dist/js/<%= pkg.buildCombined %>'],
|
||||||
|
dest: 'js/<%= pkg.buildCombined %>'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
jshint: {
|
||||||
|
files: {
|
||||||
|
src: [
|
||||||
|
'addons/pager/*.js',
|
||||||
|
'!addons/pager/*.min.js',
|
||||||
|
'js/jquery.*.js',
|
||||||
|
'js/**/*.js',
|
||||||
|
'!js/_test-*.js',
|
||||||
|
'!js/**/_test-*.js',
|
||||||
|
'!js/*.min.js',
|
||||||
|
'!js/**/semver*.js'
|
||||||
|
]
|
||||||
|
},
|
||||||
|
options: {
|
||||||
|
globals: {
|
||||||
|
'localStorage': false,
|
||||||
|
'navigator': false,
|
||||||
|
'console': false,
|
||||||
|
'alert': false
|
||||||
|
},
|
||||||
|
'loopfunc': true,
|
||||||
|
'jquery': true,
|
||||||
|
'browser': true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
uglify: {
|
||||||
|
options: {
|
||||||
|
preserveComments: 'some',
|
||||||
|
report: 'gzip'
|
||||||
|
},
|
||||||
|
allFiles: {
|
||||||
|
files: [{
|
||||||
|
expand: true,
|
||||||
|
cwd: './js/', // Src matches are relative to this path.
|
||||||
|
src: [
|
||||||
|
'**/*.js',
|
||||||
|
'!jquery.tablesorter.js',
|
||||||
|
'!_test-*.js',
|
||||||
|
'!**/_test-*.js',
|
||||||
|
'!*.min.js',
|
||||||
|
'!**/semver.js'
|
||||||
|
],
|
||||||
|
dest: 'dist/js/',
|
||||||
|
ext: '.min.js', // Dist files will have this extension.
|
||||||
|
extDot: 'last' // Extensions in filenames begin after this dot
|
||||||
|
}]
|
||||||
|
},
|
||||||
|
// jquery.tablesorter.min.js is being minified from js/jquery.tablesorter.js
|
||||||
|
// so it doesn't include the UMD wrapper! Point to the dist/js/ version
|
||||||
|
main: {
|
||||||
|
files : [{
|
||||||
|
expand: true,
|
||||||
|
cwd: './dist/js/',
|
||||||
|
src: [ 'jquery.tablesorter.js' ],
|
||||||
|
dest: 'dist/js/',
|
||||||
|
ext: '.min.js', // Dist files will have this extension.
|
||||||
|
extDot: 'last' // Extensions in filenames begin after this dot
|
||||||
|
}]
|
||||||
|
},
|
||||||
|
pageraddon: {
|
||||||
|
files: {
|
||||||
|
'dist/js/extras/jquery.tablesorter.pager.min.js': [ 'addons/pager/*.js' ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
cssmin: {
|
||||||
|
target: {
|
||||||
|
files: [{
|
||||||
|
expand: true,
|
||||||
|
flatten: true,
|
||||||
|
cwd: 'dist/css',
|
||||||
|
src: ['*.css', '!_test-*.css'],
|
||||||
|
dest: 'dist/css',
|
||||||
|
ext: '.min.css',
|
||||||
|
extDot: 'last'
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
qunit: {
|
||||||
|
files: [ 'test.html' ]
|
||||||
|
},
|
||||||
|
|
||||||
|
watch: {
|
||||||
|
scripts: {
|
||||||
|
files: [
|
||||||
|
'js/*.js',
|
||||||
|
'js/**/*.js',
|
||||||
|
'!js/_test-*.js',
|
||||||
|
'!js/*.min.js'
|
||||||
|
],
|
||||||
|
tasks: [ 'build' ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
grunt.loadNpmTasks( 'grunt-contrib-clean' );
|
||||||
|
grunt.loadNpmTasks( 'grunt-contrib-jshint' );
|
||||||
|
grunt.loadNpmTasks( 'grunt-contrib-qunit' );
|
||||||
|
grunt.loadNpmTasks( 'grunt-contrib-concat' );
|
||||||
|
grunt.loadNpmTasks( 'grunt-contrib-uglify' );
|
||||||
|
grunt.loadNpmTasks( 'grunt-contrib-copy' );
|
||||||
|
grunt.loadNpmTasks( 'grunt-contrib-watch' );
|
||||||
|
grunt.loadNpmTasks( 'grunt-contrib-cssmin' );
|
||||||
|
|
||||||
|
grunt.registerTask( 'test', [ 'jshint', 'qunit' ] );
|
||||||
|
|
||||||
|
tasks = [
|
||||||
|
'clean:build',
|
||||||
|
'copy',
|
||||||
|
'concat',
|
||||||
|
'uglify',
|
||||||
|
'cssmin',
|
||||||
|
'clean:css',
|
||||||
|
'updateManifest'
|
||||||
|
];
|
||||||
|
|
||||||
|
// basic = same as before: core, widgets, filterformatter all separate
|
||||||
|
grunt.registerTask( 'default', 'Default build', function() {
|
||||||
|
pkg.selectedWidgets = addWidgetDependencies( defaults.standardWidgets );
|
||||||
|
formFileNames();
|
||||||
|
grunt.task.run(tasks);
|
||||||
|
});
|
||||||
|
|
||||||
|
// quick build to just minify files for pushes between updates
|
||||||
|
grunt.registerTask( 'quick', [ 'copy', 'uglify', 'clean:css' ] );
|
||||||
|
|
||||||
|
// enter 'grunt custom:{filename}' (not including the '.json')
|
||||||
|
// to load in a custom json file
|
||||||
|
// the expected JSON format is (with custom widgets in a string):
|
||||||
|
// { "widgets" : "columnHighlight filter resizable saveSort stickyHeaders uitheme" }
|
||||||
|
grunt.registerTask( 'custom', 'Custom build', function(file) {
|
||||||
|
var temp, widgets,
|
||||||
|
parsers = '',
|
||||||
|
deps = true;
|
||||||
|
|
||||||
|
/* Allow developer to set up a custom widget build (json file will have settings)*/
|
||||||
|
try {
|
||||||
|
temp = grunt.file.readJSON( file );
|
||||||
|
if ( temp ) {
|
||||||
|
parsers = temp.parsers;
|
||||||
|
// include dependencies?
|
||||||
|
deps = ('includeDependencies' in temp) ? temp.includeDependencies : true;
|
||||||
|
// custom file name?
|
||||||
|
pkg.buildWidget = ('destFileName' in temp) ? temp.destFileName : 'jquery.tablesorter.custom-widgets.js';
|
||||||
|
// widgets to include
|
||||||
|
widgets = (temp.widgets || '');
|
||||||
|
if (widgets.replace(/\s+/g,'') === '') {
|
||||||
|
grunt.log.error('No widgets found in custom build file.');
|
||||||
|
console.info('Continuing build with default widgets...');
|
||||||
|
temp = defaults.standardWidgets;
|
||||||
|
pkg.buildWidget = defaults.standardWidgetFileName;
|
||||||
|
} else {
|
||||||
|
temp = widgets.split(/\s+/);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (err) {
|
||||||
|
grunt.log.error('Custom build json not found - Use "grunt custom:{filename}"');
|
||||||
|
console.info('Continuing build with default settings');
|
||||||
|
temp = defaults.standardWidgets;
|
||||||
|
}
|
||||||
|
// add dependencies
|
||||||
|
pkg.selectedWidgets = deps ? addWidgetDependencies( temp ) : temp;
|
||||||
|
pkg.selectedParsers = parsers.split( /\s+/ );
|
||||||
|
formFileNames();
|
||||||
|
grunt.task.run(tasks);
|
||||||
|
});
|
||||||
|
|
||||||
|
// update bower.json & tablesorter.jquery.json file version numbers to match the package.json version
|
||||||
|
grunt.registerTask( 'updateManifest', function() {
|
||||||
|
var i, project,
|
||||||
|
projectFile = [ 'tablesorter.jquery.json', 'bower.json' ],
|
||||||
|
len = projectFile.length;
|
||||||
|
for ( i = 0; i < len; i++ ) {
|
||||||
|
if ( !grunt.file.exists( projectFile[ i ] ) ) {
|
||||||
|
grunt.log.error( 'file ' + projectFile[ i ] + ' not found' );
|
||||||
|
return true; // return false to abort the execution
|
||||||
|
}
|
||||||
|
project = grunt.file.readJSON( projectFile[ i ] ); // get file as json object
|
||||||
|
project.version = pkg.version;
|
||||||
|
grunt.file.write( projectFile[i], JSON.stringify( project, null, 2 ) ); // serialize it back to file
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
};
|
||||||
189
README.md
Normal file
@ -0,0 +1,189 @@
|
|||||||
|
tablesorter (FORK) is a jQuery plugin for turning a standard HTML table with THEAD and TBODY tags into a sortable table without page refreshes.
|
||||||
|
tablesorter can successfully parse and sort many types of data including linked data in a cell. This forked version adds lots of new enhancements including: alphanumeric sorting, pager callback functons, multiple widgets providing column styling, ui theme application, sticky headers, column filters and resizer, as well as extended documentation with a lot more demos.
|
||||||
|
|
||||||
|
### Notice!
|
||||||
|
|
||||||
|
* Because of the change to the internal cache, the tablesorter v2.16+ core, filter widget and pager (both plugin & widget) will only work with the same version or newer files.
|
||||||
|
|
||||||
|
### [Documentation](//mottie.github.io/tablesorter/docs/)
|
||||||
|
|
||||||
|
* See the [full documentation](//mottie.github.io/tablesorter/docs/).
|
||||||
|
* All of the [original document pages](//tablesorter.com/docs/) have been included.
|
||||||
|
* Information from my blog post on [undocumented options](//wowmotty.blogspot.com/2011/06/jquery-tablesorter-missing-docs.html) and lots of new demos have also been included.
|
||||||
|
* Change log moved from included text file into the [wiki documentation](//github.com/Mottie/tablesorter/wiki/Changes).
|
||||||
|
|
||||||
|
### Demos
|
||||||
|
|
||||||
|
* [Basic alpha-numeric sort Demo](//mottie.github.com/tablesorter/).
|
||||||
|
* Links to demo pages can be found within the main [documentation](//mottie.github.io/tablesorter/docs/).
|
||||||
|
* More demos & playgrounds - updated in the [wiki pages](//github.com/Mottie/tablesorter/wiki).
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Multi-column alphanumeric sorting and filtering.
|
||||||
|
* Multi-tbody sorting - see the [options](//mottie.github.io/tablesorter/docs/index.html#options) table on the main document page.
|
||||||
|
* Supports [Bootstrap v2 and 3](//mottie.github.io/tablesorter/docs/example-widget-bootstrap-theme.html)
|
||||||
|
* Parsers for sorting text, alphanumeric text, URIs, integers, currency, floats, IP addresses, dates (ISO, long and short formats) & time. [Add your own easily](//mottie.github.io/tablesorter/docs/example-parsers.html).
|
||||||
|
* Inline editing - see [demo](//mottie.github.io/tablesorter/docs/example-widget-editable.html)
|
||||||
|
* Support for ROWSPAN and COLSPAN on TH elements.
|
||||||
|
* Support secondary "hidden" sorting (e.g., maintain alphabetical sort when sorting on other criteria).
|
||||||
|
* Extensibility via [widget system](//mottie.github.io/tablesorter/docs/example-widgets.html).
|
||||||
|
* Cross-browser: IE 6.0+, FF 2+, Safari 2.0+, Opera 9.0+, Chrome 5.0+.
|
||||||
|
* Small code size, starting at 25K minified
|
||||||
|
* Works with jQuery 1.2.6+ (jQuery 1.4.1+ needed with some widgets).
|
||||||
|
* Works with jQuery 1.9+ ($.browser.msie was removed; needed in the original version).
|
||||||
|
|
||||||
|
### Licensing
|
||||||
|
|
||||||
|
* Copyright (c) 2007 Christian Bach.
|
||||||
|
* Original examples and docs at: [http://tablesorter.com](//tablesorter.com).
|
||||||
|
* Dual licensed under the [MIT](//www.opensource.org/licenses/mit-license.php) and [GPL](//www.gnu.org/licenses/gpl.html) licenses.
|
||||||
|
|
||||||
|
### Download
|
||||||
|
|
||||||
|
* Get [all files](https://github.com/Mottie/tablesorter/archive/master.zip)
|
||||||
|
* Use [bower](http://bower.io/): `bower install jquery.tablesorter`
|
||||||
|
* Use [node.js](http://nodejs.org/): `npm install tablesorter`
|
||||||
|
* CDNJS: [https://cdnjs.com/libraries/jquery.tablesorter](https://cdnjs.com/libraries/jquery.tablesorter)
|
||||||
|
|
||||||
|
### Related Projects
|
||||||
|
|
||||||
|
* [Plugin for Rails](//github.com/themilkman/jquery-tablesorter-rails). Maintained by [themilkman](//github.com/themilkman).
|
||||||
|
* [Bootsole](//alexweissman.github.io/bootsole/) (OOP templating engine using tablesorter) by [alexweissman](//github.com/alexweissman).
|
||||||
|
|
||||||
|
### Contributing
|
||||||
|
|
||||||
|
If you would like to contribute, please...
|
||||||
|
|
||||||
|
1. Fork.
|
||||||
|
2. Make changes in a branch & add unit tests.
|
||||||
|
3. Run `grunt test` (if qunit fails, run it again - it's fickle).
|
||||||
|
4. Create a pull request.
|
||||||
|
|
||||||
|
### Special Thanks
|
||||||
|
|
||||||
|
* Big shout-out to [Nick Craver](//github.com/NickCraver) for getting rid of the `eval()` function that was previously needed for multi-column sorting.
|
||||||
|
* Big thanks to [thezoggy](//github.com/thezoggy) for helping with code, themes and providing valuable feedback.
|
||||||
|
* Big thanks to [ThsSin-](//github.com/TheSin-) for taking over for a while and also providing valuable feedback.
|
||||||
|
* Thanks to [prijutme4ty](https://github.com/prijutme4ty) for numerous contributions!
|
||||||
|
* Also extra thanks to [christhomas](//github.com/christhomas) and [Lynesth](//github.com/Lynesth) for help with code.
|
||||||
|
* And, of course thanks to everyone else that has contributed, and continues to contribute to this forked project!
|
||||||
|
|
||||||
|
### Questions?
|
||||||
|
|
||||||
|
* Check the [FAQ](//github.com/Mottie/tablesorter/wiki/FAQ) page.
|
||||||
|
* Search the [main documentation](//mottie.github.io/tablesorter/docs/) (click the menu button in the upper left corner).
|
||||||
|
* Search the [issues](//github.com/Mottie/tablesorter/issues) to see if the question or problem has been brought up before, and hopefully resolved.
|
||||||
|
* If someone is available, ask your question in the `#tablesorter` IRC channel at freenode.net.
|
||||||
|
* Ask your question at [Stackoverflow](//stackoverflow.com/questions/tagged/tablesorter) using a tablesorter tag.
|
||||||
|
* Please don't open a [new issue](//github.com/Mottie/tablesorter/issues) unless it really is an issue with the plugin, or a feature request. Thanks!
|
||||||
|
|
||||||
|
### Recent Changes
|
||||||
|
|
||||||
|
View the [complete change log here](//github.com/Mottie/tablesorter/wiki/Changes).
|
||||||
|
|
||||||
|
#### <a name="v2.22.1">Version 2.22.1</a> (5/17/2015)
|
||||||
|
|
||||||
|
* Filter: fix issue with searches always looking for parsed content in numeric columns.
|
||||||
|
|
||||||
|
#### <a name="v2.22.0">Version 2.22.0</a> (5/17/2015)
|
||||||
|
|
||||||
|
* Docs
|
||||||
|
* Lots of minor version updates, spelling corrections & clarifications in wording.
|
||||||
|
* Update box-sizing styles ([ref](http://www.paulirish.com/2012/box-sizing-border-box-ftw/)).
|
||||||
|
* Update `characterEquivalents` cross-reference to correctly match the code of the plugin.
|
||||||
|
* Add Build table widget example resulting HTML for the json example.
|
||||||
|
* Grunt build
|
||||||
|
* `package.json` files now points to the entire "dist" folder. See [issue #881](https://github.com/Mottie/tablesorter/issues/881).
|
||||||
|
* Add `grunt quick` build to only update widget & parser files; it skips updating the dates in the widgets & combined files.
|
||||||
|
* Core
|
||||||
|
* The `isDigit` function now reports `false` on empty strings. See [issue #865](https://github.com/Mottie/tablesorter/issues/865).
|
||||||
|
* Add pointer events options (`pointerClick`, `pointerDown` and `pointerUp`). Fixes [issue #885](https://github.com/Mottie/tablesorter/issues/885).
|
||||||
|
* Prevent js error when using the `computeColumnIndex` function on empty tables (used by the math widget). Fixes [issue #889](https://github.com/Mottie/tablesorter/issues/889).
|
||||||
|
* Prevent js error when `sortList` includes an out-of-bounds column. Fixes [issue #908](https://github.com/Mottie/tablesorter/issues/908).
|
||||||
|
* Centralize extractor & parser code; this code is used by the main build cache loop and the "addRows" & "updateCell" methods.
|
||||||
|
* Child row content is now properly stored in row data as an array of arrays.
|
||||||
|
* Add "o" to `sortLocaleCompare` replacement table & update docs.
|
||||||
|
* Replace all instances of using jQuery each with plain javascript. Fixes [issue #827](https://github.com/Mottie/tablesorter/issues/827).
|
||||||
|
* Editable
|
||||||
|
* Modify `trimContent` option & use HTML to modify text. Fixes [issue #886](https://github.com/Mottie/tablesorter/issues/886).
|
||||||
|
* Fix `selectAll` & change `tbody` mouseleave to complete editing to `thead` mouseenter. Fixes [issue #848](https://github.com/Mottie/tablesorter/issues/848).
|
||||||
|
* Only make table cell child div/span contenteditable. See [issue #900](https://github.com/Mottie/tablesorter/issues/900).
|
||||||
|
* Add remove widget code & allow dynamic updating if the "no-edit" class changes. Fixes [issue #900](https://github.com/Mottie/tablesorter/issues/900).
|
||||||
|
* Filter
|
||||||
|
* Regex filter searches now cache the created regex object for each query to optimize speed & a regex search now properly uses case-sensitive content
|
||||||
|
* Add `data` parameter to `filter_functions`. This is the same data used by the filter search type functions. See [issue #891](https://github.com/Mottie/tablesorter/issues/891).
|
||||||
|
* Any match searches which target specific columns will no longer save each filter to its respective column; see ["AnyMatch Searches"](http://mottie.github.io/tablesorter/docs/example-widget-filter-any-match.html#anymatch_searches) documentation.
|
||||||
|
* Operator filter searchs now ignore empty strings (because `"" < 10` is `true`).
|
||||||
|
* Clean up `parseFilter` function.
|
||||||
|
* Add `filter_childByColumn` option.
|
||||||
|
* Setting this to `true` allows searching through the child rows by column.
|
||||||
|
* When `false`, the search behaves as before and all child row content is included in the search of every column.
|
||||||
|
* See a [demo here](http://mottie.github.io/tablesorter/docs/example-child-rows-filtered.html#child-by-column).
|
||||||
|
* Fixes issues [#396](https://github.com/Mottie/tablesorter/issues/396) & [#574](https://github.com/Mottie/tablesorter/issues/574).
|
||||||
|
* Code cleanup - added a bunch of whitespace & forced line wraps at around 120.
|
||||||
|
* Prevent setFilter function from setting the same filters after an update. Fixes issues [#903](https://github.com/Mottie/tablesorter/issues/903) & [#733](https://github.com/Mottie/tablesorter/issues/733).
|
||||||
|
* Grouping
|
||||||
|
* Add keyboard accessibility to group headers. See [issue #260](https://github.com/Mottie/tablesorter/issues/260).
|
||||||
|
* Math
|
||||||
|
* Fix issues with `isNaN('') // false`. See [issue #873](https://github.com/Mottie/tablesorter/issues/873).
|
||||||
|
* Reapply column indexing after updates & prevent js error on empty tables. Fixes [issue #889](https://github.com/Mottie/tablesorter/issues/889).
|
||||||
|
* Reduce update time to 20ms. See [issue #898](https://github.com/Mottie/tablesorter/issues/898).
|
||||||
|
* Exclude ignored cells even if `math_ignore` is empty. Fixes [issue #896](https://github.com/Mottie/tablesorter/issues/896).
|
||||||
|
* Output
|
||||||
|
* Add BOM back to downloaded file. Fixes [issue #862](https://github.com/Mottie/tablesorter/issues/862).
|
||||||
|
* Add `output_hiddenColumns` option. Fixes [issue #869](https://github.com/Mottie/tablesorter/issues/869).
|
||||||
|
* Add known issues section about downloading in Safari.
|
||||||
|
* Pager (addon & widget)
|
||||||
|
* Replace all instances of using jQuery each with plain javascript. Fixes [issue #827](https://github.com/Mottie/tablesorter/issues/827).
|
||||||
|
* Resizable
|
||||||
|
* Refreshing the widget will now preserve the storage. See [issue #874](https://github.com/Mottie/tablesorter/issues/874).
|
||||||
|
* Scroller
|
||||||
|
* Set `overflow-x` auto & apply border-box to scroller. See [issue #135](https://github.com/Mottie/tablesorter/issues/135).
|
||||||
|
* Remove `pointer-events: none` from fixed column. See [issue #878](https://github.com/Mottie/tablesorter/issues/878).
|
||||||
|
* Hide fixed column scrollbar in IE9 & older. See [issue #135](https://github.com/Mottie/tablesorter/issues/135).
|
||||||
|
* Update `pointer-events` and tabbing accessibility. See [issue #135](https://github.com/Mottie/tablesorter/issues/135).
|
||||||
|
* `setFixedColumnSize` now properly updates with no set size.
|
||||||
|
* Add `scroller_addFixedOverlay`
|
||||||
|
* When `true`, a fixed column overlay is added for additional styling. See [issue #887](https://github.com/Mottie/tablesorter/issues/887).
|
||||||
|
* It includes css [`pointer-events`](http://caniuse.com/#search=pointer-events) set to `none` to allow interaction with elements underneath; make sure your browser supports it!
|
||||||
|
* Fix selector issue in the remove function.
|
||||||
|
* Properly refresh column size after an update. Fixes the third part of [issue #906](https://github.com/Mottie/tablesorter/issues/906).
|
||||||
|
* Parsers
|
||||||
|
* Add "inputs-numeric" parser. Fixes [issue #888](https://github.com/Mottie/tablesorter/issues/888).
|
||||||
|
* Add [jQuery Globalize](https://github.com/jquery/globalize) [date](http://jsfiddle.net/Mottie/0j18Lw8r/) & [number](http://jsfiddle.net/Mottie/0j18Lw8r/) parsers.
|
||||||
|
* "namedNumbers" parser: ignores adjacent puncutation. Fixes [issue #890](https://github.com/Mottie/tablesorter/issues/890).
|
||||||
|
* input-select parsers:
|
||||||
|
* Clean up & add event namespaces.
|
||||||
|
* Now return an empty string if the value is empty; previously, it would return the cell text when the value was empty.
|
||||||
|
* Network "MAC" parser:
|
||||||
|
* Return the original string if the address is grossly invalid. Fixes [issue #895](https://github.com/Mottie/tablesorter/issues/895).
|
||||||
|
* No longer auto-detect as iPv6. See [issue #895](https://github.com/Mottie/tablesorter/issues/895).
|
||||||
|
* Themes
|
||||||
|
* Declare font-weight separately. Thanks [nikolas](https://github.com/nikolas) ([pull #866](https://github.com/Mottie/tablesorter/pull/868))!
|
||||||
|
* Update Boostrap v2.x theme, and add a [Bootstrap v2.x demo](http://mottie.github.io/tablesorter/docs/example-widget-bootstrap-theme-v2.html).
|
||||||
|
|
||||||
|
#### <a name="v2.21.5">Version 2.21.5</a> (4/8/2015)
|
||||||
|
|
||||||
|
* Filter
|
||||||
|
* Cache main loop variables - speed enhancement.
|
||||||
|
* Allow setting `filter_selectSource` along with `filter_functions` ([demo](http://jsfiddle.net/Mottie/856bzzeL/117/)).
|
||||||
|
* Resizable
|
||||||
|
* Integrate with columnSelector. See [issue #859](https://github.com/Mottie/tablesorter/issues/859).
|
||||||
|
* Prevent javascript error.
|
||||||
|
* Resizable handles now properly align when the table is within a layout with margins. Fixes [issue #864](https://github.com/Mottie/tablesorter/issues/864).
|
||||||
|
* Scroller
|
||||||
|
* Apply on initialization. Fixes [issue #860](https://github.com/Mottie/tablesorter/issues/860).
|
||||||
|
|
||||||
|
#### <a name="v2.21.4">Version 2.21.4</a> (3/28/2015)
|
||||||
|
|
||||||
|
* Core
|
||||||
|
* Add a utility [`$.tablesorter.getColumnText()` function](http://mottie.github.io/tablesorter/docs/#function-getcolumntext).
|
||||||
|
* This function will provide a centralized method of obtaining column data (raw & parsed text from cells) and allow processing cells.
|
||||||
|
* I plan to update all widgets that need to interact or obtain column data to use this function in v2.22.0.
|
||||||
|
* Build
|
||||||
|
* The build process now includes selected parsers (added `parsers` option to build json).
|
||||||
|
* A new `jquery.tablesorter.combined.js` file is created which will contain the core plugin along with all selected widgets & parsers; a default build does not have any selected parsers.
|
||||||
|
* This will work around, but not resolve, [issue #855](https://github.com/Mottie/tablesorter/issues/855).
|
||||||
|
* Extras
|
||||||
|
* Update `semver.js` & `semver-mod.js` to v4.3.3.
|
||||||
BIN
addons/pager/icons/first.png
Normal file
|
After Width: | Height: | Size: 720 B |
BIN
addons/pager/icons/last.png
Normal file
|
After Width: | Height: | Size: 737 B |
BIN
addons/pager/icons/loading.gif
Normal file
|
After Width: | Height: | Size: 416 B |
BIN
addons/pager/icons/next.png
Normal file
|
After Width: | Height: | Size: 736 B |
BIN
addons/pager/icons/prev.png
Normal file
|
After Width: | Height: | Size: 745 B |
42
addons/pager/jquery.tablesorter.pager.css
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
/* pager wrapper, div */
|
||||||
|
.tablesorter-pager {
|
||||||
|
padding: 5px;
|
||||||
|
}
|
||||||
|
/* pager wrapper, in thead/tfoot */
|
||||||
|
td.tablesorter-pager {
|
||||||
|
background-color: #e6eeee;
|
||||||
|
margin: 0; /* needed for bootstrap .pager gets a 18px bottom margin */
|
||||||
|
}
|
||||||
|
/* pager navigation arrows */
|
||||||
|
.tablesorter-pager img {
|
||||||
|
vertical-align: middle;
|
||||||
|
margin-right: 2px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* pager output text */
|
||||||
|
.tablesorter-pager .pagedisplay {
|
||||||
|
padding: 0 5px 0 5px;
|
||||||
|
width: auto;
|
||||||
|
white-space: nowrap;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* pager element reset (needed for bootstrap) */
|
||||||
|
.tablesorter-pager select {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*** css used when "updateArrows" option is true ***/
|
||||||
|
/* the pager itself gets a disabled class when the number of rows is less than the size */
|
||||||
|
.tablesorter-pager.disabled {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
/* hide or fade out pager arrows when the first or last row is visible */
|
||||||
|
.tablesorter-pager .disabled {
|
||||||
|
/* visibility: hidden */
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
1090
addons/pager/jquery.tablesorter.pager.js
Normal file
1200
beta-testing/example-pager-custom-controls.html
Normal file
192
beta-testing/example-widget-column-reorder.html
Normal file
@ -0,0 +1,192 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>jQuery plugin: Tablesorter 2.0 - Column reorder Widget</title>
|
||||||
|
|
||||||
|
<!-- jQuery -->
|
||||||
|
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.js"></script>
|
||||||
|
|
||||||
|
<!-- Demo stuff -->
|
||||||
|
<link rel="stylesheet" href="../docs/css/jq.css">
|
||||||
|
<link href="../docs/css/prettify.css" rel="stylesheet">
|
||||||
|
<script src="../docs/js/prettify.js"></script>
|
||||||
|
<script src="../docs/js/docs.js"></script>
|
||||||
|
|
||||||
|
<!-- Tablesorter: theme -->
|
||||||
|
<link class="theme" rel="stylesheet" href="../css/theme.blue.css">
|
||||||
|
|
||||||
|
<style id="css">.tablesorter-header.tablesorter-reorder-helper {
|
||||||
|
cursor: move;
|
||||||
|
}
|
||||||
|
.tablesorter-reorder-helper-bar {
|
||||||
|
width: 1px;
|
||||||
|
background: #000;
|
||||||
|
}</style>
|
||||||
|
|
||||||
|
<!-- Tablesorter script: required -->
|
||||||
|
<script src="../js/jquery.tablesorter.js"></script>
|
||||||
|
<script src="../js/jquery.tablesorter.widgets.js"></script>
|
||||||
|
|
||||||
|
<script src="widget-reorder.js"></script>
|
||||||
|
|
||||||
|
<script id="js">$(function(){
|
||||||
|
|
||||||
|
$("table").tablesorter({
|
||||||
|
theme : 'blue',
|
||||||
|
widthFixed : true,
|
||||||
|
widgets: [ 'reorder', 'zebra', 'stickyHeaders', 'filter' ],
|
||||||
|
widgetOptions: {
|
||||||
|
reorder_axis : 'x', // 'x' or 'xy'
|
||||||
|
reorder_delay : 300,
|
||||||
|
reorder_helperClass : 'tablesorter-reorder-helper',
|
||||||
|
reorder_helperBar : 'tablesorter-reorder-helper-bar',
|
||||||
|
reorder_noReorder : 'reorder-false',
|
||||||
|
reorder_blocked : 'reorder-block-left reorder-block-end',
|
||||||
|
reorder_complete : null // callback
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}); </script>
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div id="banner">
|
||||||
|
<h1>table<em>sorter</em></h1>
|
||||||
|
<h2>Sticky Header Widget</h2>
|
||||||
|
<h3>Flexible client-side table sorting</h3>
|
||||||
|
<a href="index.html">Back to documentation</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="main">
|
||||||
|
|
||||||
|
<p class="tip">
|
||||||
|
<em>NOTE!</em>
|
||||||
|
<ul>
|
||||||
|
<li>Column reorder - beta testing.</li>
|
||||||
|
<li>Does not yet work properly with sticky headers - reorder second table while top table sticky header is active, then scroll...</li>
|
||||||
|
</ul>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h1>Javascript</h1>
|
||||||
|
<div id="javascript">
|
||||||
|
<pre class="prettyprint lang-javascript"></pre>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1>CSS</h1>
|
||||||
|
<div id="css">
|
||||||
|
<pre class="prettyprint lang-css"></pre>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1>Demo</h1>
|
||||||
|
|
||||||
|
<table class="tablesorter">
|
||||||
|
<caption>Student Grades</caption>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th class="reorder-false reorder-block-left">Name (0)</th>
|
||||||
|
<th>Major (1)</th>
|
||||||
|
<th>Sex (2)</th>
|
||||||
|
<th>English (3)</th>
|
||||||
|
<th>Japanese (4)</th>
|
||||||
|
<th>Calculus (5)</th>
|
||||||
|
<th class="reorder-block-end">Geometry (6)</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tfoot>
|
||||||
|
<tr><th>Name</th><th>Major</th><th>Sex</th><th>English</th><th>Japanese</th><th>Calculus</th><th>Geometry</th></tr>
|
||||||
|
</tfoot>
|
||||||
|
<tbody>
|
||||||
|
<tr><td>Student01 (0)</td><td>Languages (1)</td><td>male (2)</td><td>80 (3)</td><td>70 (4)</td><td>75 (5)</td><td>80 (6)</td></tr>
|
||||||
|
<tr><td>Student02</td><td>Mathematics</td><td>male</td><td>90</td><td>88</td><td>100</td><td>90</td></tr>
|
||||||
|
<tr><td>Student03</td><td>Languages</td><td>female</td><td>85</td><td>95</td><td>80</td><td>85</td></tr>
|
||||||
|
<tr><td>Student04</td><td>Languages</td><td>male</td><td>60</td><td>55</td><td>100</td><td>100</td></tr>
|
||||||
|
<tr><td>Student05</td><td>Languages</td><td>female</td><td>68</td><td>80</td><td>95</td><td>80</td></tr>
|
||||||
|
<tr><td>Student06</td><td>Mathematics</td><td>male</td><td>100</td><td>99</td><td>100</td><td>90</td></tr>
|
||||||
|
<tr><td>Student07</td><td>Mathematics</td><td>male</td><td>85</td><td>68</td><td>90</td><td>90</td></tr>
|
||||||
|
<tr><td>Student08</td><td>Languages</td><td>male</td><td>100</td><td>90</td><td>90</td><td>85</td></tr>
|
||||||
|
<tr><td>Student09</td><td>Mathematics</td><td>male</td><td>80</td><td>50</td><td>65</td><td>75</td></tr>
|
||||||
|
<tr><td>Student10</td><td>Languages</td><td>male</td><td>85</td><td>100</td><td>100</td><td>90</td></tr>
|
||||||
|
<tr><td>Student11</td><td>Languages</td><td>male</td><td>86</td><td>85</td><td>100</td><td>100</td></tr>
|
||||||
|
<tr><td>Student12</td><td>Mathematics</td><td>female</td><td>100</td><td>75</td><td>70</td><td>85</td></tr>
|
||||||
|
<tr><td>Student13</td><td>Languages</td><td>female</td><td>100</td><td>80</td><td>100</td><td>90</td></tr>
|
||||||
|
<tr><td>Student14</td><td>Languages</td><td>female</td><td>50</td><td>45</td><td>55</td><td>90</td></tr>
|
||||||
|
<tr><td>Student15</td><td>Languages</td><td>male</td><td>95</td><td>35</td><td>100</td><td>90</td></tr>
|
||||||
|
<tr><td>Student16</td><td>Languages</td><td>female</td><td>100</td><td>50</td><td>30</td><td>70</td></tr>
|
||||||
|
<tr><td>Student17</td><td>Languages</td><td>female</td><td>80</td><td>100</td><td>55</td><td>65</td></tr>
|
||||||
|
<tr><td>Student18</td><td>Mathematics</td><td>male</td><td>30</td><td>49</td><td>55</td><td>75</td></tr>
|
||||||
|
<tr><td>Student19</td><td>Languages</td><td>male</td><td>68</td><td>90</td><td>88</td><td>70</td></tr>
|
||||||
|
<tr><td>Student20</td><td>Mathematics</td><td>male</td><td>40</td><td>45</td><td>40</td><td>80</td></tr>
|
||||||
|
<tr><td>Student21</td><td>Languages</td><td>male</td><td>50</td><td>45</td><td>100</td><td>100</td></tr>
|
||||||
|
<tr><td>Student22</td><td>Mathematics</td><td>male</td><td>100</td><td>99</td><td>100</td><td>90</td></tr>
|
||||||
|
<tr><td>Student23</td><td>Languages</td><td>female</td><td>85</td><td>80</td><td>80</td><td>80</td></tr>
|
||||||
|
<!--
|
||||||
|
<tr><td>student23</td><td>Mathematics</td><td>male</td><td>82</td><td>77</td><td>0</td><td>79</td></tr>
|
||||||
|
<tr><td>student24</td><td>Languages</td><td>female</td><td>100</td><td>91</td><td>13</td><td>82</td></tr>
|
||||||
|
<tr><td>student25</td><td>Mathematics</td><td>male</td><td>22</td><td>96</td><td>82</td><td>53</td></tr>
|
||||||
|
<tr><td>student26</td><td>Languages</td><td>female</td><td>37</td><td>29</td><td>56</td><td>59</td></tr>
|
||||||
|
<tr><td>student27</td><td>Mathematics</td><td>male</td><td>86</td><td>82</td><td>69</td><td>23</td></tr>
|
||||||
|
<tr><td>student28</td><td>Languages</td><td>female</td><td>44</td><td>25</td><td>43</td><td>1</td></tr>
|
||||||
|
<tr><td>student29</td><td>Mathematics</td><td>male</td><td>77</td><td>47</td><td>22</td><td>38</td></tr>
|
||||||
|
<tr><td>student30</td><td>Languages</td><td>female</td><td>19</td><td>35</td><td>23</td><td>10</td></tr>
|
||||||
|
<tr><td>student31</td><td>Mathematics</td><td>male</td><td>90</td><td>27</td><td>17</td><td>50</td></tr>
|
||||||
|
<tr><td>student32</td><td>Languages</td><td>female</td><td>60</td><td>75</td><td>33</td><td>38</td></tr>
|
||||||
|
<tr><td>student33</td><td>Mathematics</td><td>male</td><td>4</td><td>31</td><td>37</td><td>15</td></tr>
|
||||||
|
<tr><td>student34</td><td>Languages</td><td>female</td><td>77</td><td>97</td><td>81</td><td>44</td></tr>
|
||||||
|
<tr><td>student35</td><td>Mathematics</td><td>male</td><td>5</td><td>81</td><td>51</td><td>95</td></tr>
|
||||||
|
<tr><td>student36</td><td>Languages</td><td>female</td><td>70</td><td>61</td><td>70</td><td>94</td></tr>
|
||||||
|
<tr><td>student37</td><td>Mathematics</td><td>male</td><td>60</td><td>3</td><td>61</td><td>84</td></tr>
|
||||||
|
<tr><td>student38</td><td>Languages</td><td>female</td><td>63</td><td>39</td><td>0</td><td>11</td></tr>
|
||||||
|
<tr><td>student39</td><td>Mathematics</td><td>male</td><td>50</td><td>46</td><td>32</td><td>38</td></tr>
|
||||||
|
<tr><td>student40</td><td>Languages</td><td>female</td><td>51</td><td>75</td><td>25</td><td>3</td></tr>
|
||||||
|
<tr><td>student41</td><td>Mathematics</td><td>male</td><td>43</td><td>34</td><td>28</td><td>78</td></tr>
|
||||||
|
<tr><td>student42</td><td>Languages</td><td>female</td><td>11</td><td>89</td><td>60</td><td>95</td></tr>
|
||||||
|
<tr><td>student43</td><td>Mathematics</td><td>male</td><td>48</td><td>92</td><td>18</td><td>88</td></tr>
|
||||||
|
<tr><td>student44</td><td>Languages</td><td>female</td><td>82</td><td>2</td><td>59</td><td>73</td></tr>
|
||||||
|
<tr><td>student45</td><td>Mathematics</td><td>male</td><td>91</td><td>73</td><td>37</td><td>39</td></tr>
|
||||||
|
<tr><td>student46</td><td>Languages</td><td>female</td><td>4</td><td>8</td><td>12</td><td>10</td></tr>
|
||||||
|
<tr><td>student47</td><td>Mathematics</td><td>male</td><td>89</td><td>10</td><td>6</td><td>11</td></tr>
|
||||||
|
<tr><td>student48</td><td>Languages</td><td>female</td><td>90</td><td>32</td><td>21</td><td>18</td></tr>
|
||||||
|
<tr><td>student49</td><td>Mathematics</td><td>male</td><td>42</td><td>49</td><td>49</td><td>72</td></tr>
|
||||||
|
<tr><td>student50</td><td>Languages</td><td>female</td><td>56</td><td>37</td><td>67</td><td>54</td></tr>
|
||||||
|
-->
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<div class="narrow-block">
|
||||||
|
<table class="tablesorter">
|
||||||
|
<thead>
|
||||||
|
<tr><th>Account #</th><th>First Name</th><th>Last Name</th><th>Age</th><th>Total</th><th>Discount</th><th>Diff</th></tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr><td>A43</td><td>Peter</td><td>Parker</td><td>28</td><td>9.99</td><td>20.3%</td><td>+3</td></tr>
|
||||||
|
<tr><td>A255</td><td>John</td><td>Hood</td><td>33</td><td>19.99</td><td>25.1%</td><td>-7</td></tr>
|
||||||
|
<tr><td>A33</td><td>Clark</td><td>Kent</td><td>18</td><td>15.49</td><td>44.2%</td><td>-13</td></tr>
|
||||||
|
<tr><td>A11</td><td>Bruce</td><td>Almighty</td><td>45</td><td>153.19</td><td>44%</td><td>+19</td></tr>
|
||||||
|
<tr><td>A102</td><td>Bruce</td><td>Evans</td><td>56</td><td>153.19</td><td>23%</td><td>+9</td></tr>
|
||||||
|
<tr><td>A23</td><td>Mike</td><td>Peters</td><td>22</td><td>5.69</td><td>20.3%</td><td>+2</td></tr>
|
||||||
|
<tr><td>A55</td><td>Leslie</td><td>Kent</td><td>33</td><td>15.99</td><td>25.1%</td><td>-3</td></tr>
|
||||||
|
<tr><td>A3</td><td>Frank</td><td>Mint</td><td>44</td><td>12.59</td><td>44.2%</td><td>-12</td></tr>
|
||||||
|
<tr><td>A21</td><td>Joe</td><td>Thomas</td><td>45</td><td>15.25</td><td>44%</td><td>+12</td></tr>
|
||||||
|
<tr><td>A12</td><td>Tess</td><td>Evans</td><td>66</td><td>13.59</td><td>23%</td><td>+4</td></tr>
|
||||||
|
<tr><td>A21</td><td>Peter</td><td>Dunn</td><td>12</td><td>2.99</td><td>21.1%</td><td>+2</td></tr>
|
||||||
|
<tr><td>A33</td><td>Harry</td><td>Jones</td><td>13</td><td>19.49</td><td>22.2%</td><td>-6</td></tr>
|
||||||
|
<tr><td>A13</td><td>John</td><td>James</td><td>16</td><td>13.89</td><td>42.1%</td><td>-13</td></tr>
|
||||||
|
<tr><td>A71</td><td>Nick</td><td>Parker</td><td>45</td><td>13.89</td><td>44%</td><td>+29</td></tr>
|
||||||
|
<tr><td>A21</td><td>Charles</td><td>Dunn</td><td>19</td><td>15.49</td><td>22%</td><td>+3</td></tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="spacer"></div>
|
||||||
|
<div class="next-up">
|
||||||
|
<hr />
|
||||||
|
Next up: <a href="example-widget-zebra.html">Zebra stripe widget ››</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
102
beta-testing/pager-custom-controls.js
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
/*!
|
||||||
|
* custom pager controls (beta) for TableSorter 9/15/2014 (v2.17.8) - updated 3/26/2015 (v2.21.3)
|
||||||
|
initialize custom pager script BEFORE initializing tablesorter/tablesorter pager
|
||||||
|
custom pager looks like this:
|
||||||
|
1 | 2 … 5 | 6 | 7 … 99 | 100
|
||||||
|
_ _ _ _ adjacentSpacer
|
||||||
|
_ _ distanceSpacer
|
||||||
|
_____ ________ ends (2 default)
|
||||||
|
_________ aroundCurrent (1 default)
|
||||||
|
|
||||||
|
*/
|
||||||
|
/*jshint browser:true, jquery:true, unused:false, loopfunc:true */
|
||||||
|
/*global jQuery: false */
|
||||||
|
|
||||||
|
;(function($){
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.tablesorter = $.tablesorter || {};
|
||||||
|
|
||||||
|
$.tablesorter.customPagerControls = function(settings) {
|
||||||
|
var defaults = {
|
||||||
|
table : 'table',
|
||||||
|
pager : '.pager',
|
||||||
|
pageSize : '.left a',
|
||||||
|
currentPage : '.right a',
|
||||||
|
ends : 2, // number of pages to show of either end
|
||||||
|
aroundCurrent : 1, // number of pages surrounding the current page
|
||||||
|
link : '<a href="#">{page}</a>', // page element; use {page} to include the page number
|
||||||
|
currentClass : 'current', // current page class name
|
||||||
|
adjacentSpacer : ' | ', // spacer for page numbers next to each other
|
||||||
|
distanceSpacer : ' … ', // spacer for page numbers away from each other (ellipsis)
|
||||||
|
addKeyboard : true // add left/right keyboard arrows to change current page
|
||||||
|
},
|
||||||
|
options = $.extend({}, defaults, settings),
|
||||||
|
$table = $(options.table),
|
||||||
|
$pager = $(options.pager);
|
||||||
|
|
||||||
|
$table
|
||||||
|
.on('pagerInitialized pagerComplete', function (e, c) {
|
||||||
|
var indx,
|
||||||
|
p = c.pager ? c.pager : c, // using widget
|
||||||
|
pages = $('<div/>'),
|
||||||
|
pageArray = [],
|
||||||
|
cur = p.page + 1,
|
||||||
|
start = cur > 1 ? (p.filteredPages - cur < options.aroundCurrent ? -(options.aroundCurrent + 1) + (p.filteredPages - cur) : -options.aroundCurrent) : 0,
|
||||||
|
end = cur < options.aroundCurrent + 1 ? options.aroundCurrent + 3 - cur : options.aroundCurrent + 1;
|
||||||
|
for (indx = start; indx < end; indx++) {
|
||||||
|
if (cur + indx >= 1 && cur + indx < p.filteredPages) { pageArray.push( cur + indx ); }
|
||||||
|
}
|
||||||
|
if (pageArray.length) {
|
||||||
|
// include first and last pages (ends) in the pagination
|
||||||
|
for (indx = 0; indx < options.ends; indx++){
|
||||||
|
if ($.inArray(indx + 1, pageArray) === -1) { pageArray.push(indx + 1); }
|
||||||
|
if ($.inArray(p.filteredPages - indx, pageArray) === -1) { pageArray.push(p.filteredPages - indx); }
|
||||||
|
}
|
||||||
|
// sort the list
|
||||||
|
pageArray = pageArray.sort(function(a, b){ return a - b; });
|
||||||
|
// make links and spacers
|
||||||
|
$.each(pageArray, function(indx, value){
|
||||||
|
pages
|
||||||
|
.append( $(options.link.replace(/\{page\}/g, value)).toggleClass(options.currentClass, value === cur).attr('data-page', value) )
|
||||||
|
.append( '<span>' + (indx < pageArray.length - 1 && ( pageArray[ indx + 1 ] - 1 !== value ) ? options.distanceSpacer :
|
||||||
|
( indx >= pageArray.length - 1 ? '' : options.adjacentSpacer )) + '</span>' );
|
||||||
|
});
|
||||||
|
}
|
||||||
|
$pager.find('.pagecount').html(pages.html());
|
||||||
|
});
|
||||||
|
|
||||||
|
// set up pager controls
|
||||||
|
$pager.find(options.pageSize).on('click', function () {
|
||||||
|
$(this)
|
||||||
|
.addClass(options.currentClass)
|
||||||
|
.siblings()
|
||||||
|
.removeClass(options.currentClass);
|
||||||
|
$table.trigger('pageSize', $(this).html());
|
||||||
|
return false;
|
||||||
|
}).end()
|
||||||
|
.on('click', options.currentPage, function(){
|
||||||
|
$(this)
|
||||||
|
.addClass(options.currentClass)
|
||||||
|
.siblings()
|
||||||
|
.removeClass(options.currentClass);
|
||||||
|
$table.trigger('pageSet', $(this).attr('data-page'));
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
|
||||||
|
// make right/left arrow keys work
|
||||||
|
if (options.addKeyboard) {
|
||||||
|
$(document).on('keydown', function(events){
|
||||||
|
// ignore arrows inside form elements
|
||||||
|
if (/input|select|textarea/i.test(events.target.nodeName)) { return; }
|
||||||
|
if (events.which === 37) {
|
||||||
|
// left
|
||||||
|
$pager.find(options.currentPage).filter('.' + options.currentClass).prevAll(':not(span):first').click();
|
||||||
|
} else if (events.which === 39) {
|
||||||
|
// right
|
||||||
|
$pager.find(options.currentPage).filter('.' + options.currentClass).nextAll(':not(span):first').click();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
})(jQuery);
|
||||||
182
beta-testing/widget-reorder.js
Normal file
@ -0,0 +1,182 @@
|
|||||||
|
/*! tablesorter column reorder - beta testing
|
||||||
|
* Requires tablesorter v2.8+ and jQuery 1.7+
|
||||||
|
* by Rob Garrison
|
||||||
|
*/
|
||||||
|
/*jshint browser:true, jquery:true, unused:false */
|
||||||
|
/*global jQuery: false */
|
||||||
|
;(function($){
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.tablesorter.addWidget({
|
||||||
|
id: 'reorder',
|
||||||
|
priority: 70,
|
||||||
|
options : {
|
||||||
|
reorder_axis : 'xy', // x or xy
|
||||||
|
reorder_delay : 300,
|
||||||
|
reorder_helperClass : 'tablesorter-reorder-helper',
|
||||||
|
reorder_helperBar : 'tablesorter-reorder-helper-bar',
|
||||||
|
reorder_noReorder : 'reorder-false',
|
||||||
|
reorder_blocked : 'reorder-block-left reorder-block-end',
|
||||||
|
reorder_complete : null // callback
|
||||||
|
},
|
||||||
|
init: function(table, thisWidget, c, wo) {
|
||||||
|
var i, timer, $helper, $bar, clickOffset,
|
||||||
|
lastIndx = -1,
|
||||||
|
ts = $.tablesorter,
|
||||||
|
endIndex = -1,
|
||||||
|
startIndex = -1,
|
||||||
|
t = wo.reorder_blocked.split(' '),
|
||||||
|
noReorderLeft = t[0] || 'reorder-block-left',
|
||||||
|
noReorderLast = t[1] || 'reorder-block-end',
|
||||||
|
lastOffset = c.$headers.not('.' + noReorderLeft).first(),
|
||||||
|
offsets = c.$headers.map(function(i){
|
||||||
|
var s, $t = $(this);
|
||||||
|
if ($t.hasClass(noReorderLeft)) {
|
||||||
|
s = lastOffset;
|
||||||
|
$t = s;
|
||||||
|
//lastOffset = $t;
|
||||||
|
}
|
||||||
|
lastOffset = $t;
|
||||||
|
return $t.offset().left;
|
||||||
|
}).get(),
|
||||||
|
len = offsets.length,
|
||||||
|
startReorder = function(e, $th){
|
||||||
|
var p = $th.position(),
|
||||||
|
r = $th.parent().position(),
|
||||||
|
i = startIndex = $th.index();
|
||||||
|
clickOffset = [ e.pageX - p.left, e.pageY - r.top ];
|
||||||
|
$helper = c.$table.clone();
|
||||||
|
$helper.find('> thead > tr:first').children('[data-column!=' + i + ']').remove();
|
||||||
|
$helper.find('thead tr:gt(0), caption, colgroup, tbody, tfoot').remove();
|
||||||
|
$helper
|
||||||
|
.css({
|
||||||
|
position: 'absolute',
|
||||||
|
zIndex : 1,
|
||||||
|
left: p.left - clickOffset[0],
|
||||||
|
top: r.top - clickOffset[1],
|
||||||
|
width: $th.outerWidth()
|
||||||
|
})
|
||||||
|
.appendTo('body')
|
||||||
|
.find('th, td').addClass(wo.reorder_helperClass);
|
||||||
|
$bar = $('<div class="' + wo.reorder_helperBar + '" />')
|
||||||
|
.css({
|
||||||
|
position : 'absolute',
|
||||||
|
top : c.$table.find('thead').offset().top,
|
||||||
|
height : $th.closest('thead').outerHeight() + c.$table.find('tbody').height()
|
||||||
|
})
|
||||||
|
.appendTo('body');
|
||||||
|
positionBar(e);
|
||||||
|
lastIndx = endIndex;
|
||||||
|
},
|
||||||
|
positionBar = function(e){
|
||||||
|
for (i = 0; i <= len; i++) {
|
||||||
|
if ( i > 0 && e.pageX < offsets[i-1] + (offsets[i] - offsets[i-1])/2 && !c.$headers.eq(i).hasClass(noReorderLeft) ) {
|
||||||
|
endIndex = i - 1;
|
||||||
|
// endIndex = offsets.lastIndexOf( offsets[i-1] ); // lastIndexOf not supported by IE8 and older
|
||||||
|
if (endIndex >= 0 && lastIndx === endIndex) { return false; }
|
||||||
|
lastIndx = endIndex;
|
||||||
|
if (c.debug) {
|
||||||
|
ts.log( endIndex === 0 ? 'target before column 0' : endIndex === len ? 'target after last column' : 'target between columns ' + startIndex + ' and ' + endIndex);
|
||||||
|
}
|
||||||
|
$bar.css('left', offsets[i-1]);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (endIndex < 0) {
|
||||||
|
endIndex = len;
|
||||||
|
$bar.css('left', offsets[len]);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
finishReorder = function(){
|
||||||
|
$helper.remove();
|
||||||
|
$bar.remove();
|
||||||
|
// finish reorder
|
||||||
|
var adj, s = startIndex,
|
||||||
|
rows = c.$table.find('tr'),
|
||||||
|
cols;
|
||||||
|
startIndex = -1; // stop mousemove updates
|
||||||
|
if ( s > -1 && endIndex > -1 && s != endIndex && s + 1 !== endIndex ) {
|
||||||
|
adj = endIndex !== 0;
|
||||||
|
if (c.debug) {
|
||||||
|
ts.log( 'Inserting column ' + s + (adj ? ' after' : ' before') + ' column ' + (endIndex - adj ? 1 : 0) );
|
||||||
|
}
|
||||||
|
rows.each(function() {
|
||||||
|
cols = $(this).children();
|
||||||
|
cols.eq(s)[ adj ? 'insertAfter' : 'insertBefore' ]( cols.eq( endIndex - (adj ? 1 : 0) ) );
|
||||||
|
});
|
||||||
|
cols = [];
|
||||||
|
// stored header info needs to be modified too!
|
||||||
|
for (i = 0; i < len; i++) {
|
||||||
|
if (i === s) { continue; }
|
||||||
|
if (i === endIndex - (adj ? 1 : 0)) {
|
||||||
|
if (!adj) { cols.push(c.headerContent[s]); }
|
||||||
|
cols.push(c.headerContent[i]);
|
||||||
|
if (adj) { cols.push(c.headerContent[s]); }
|
||||||
|
} else {
|
||||||
|
cols.push(c.headerContent[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
c.headerContent = cols;
|
||||||
|
// cols = c.headerContent.splice(s, 1);
|
||||||
|
// c.headerContent.splice(endIndex - (adj ? 1 : 0), 0, cols);
|
||||||
|
c.$table.trigger('updateAll', [ true, wo.reorder_complete ]);
|
||||||
|
}
|
||||||
|
endIndex = -1;
|
||||||
|
},
|
||||||
|
mdown = function(e, el){
|
||||||
|
var $t = $(el), evt = e;
|
||||||
|
if ($t.hasClass(wo.reorder_noReorder)) { return; }
|
||||||
|
timer = setTimeout(function(){
|
||||||
|
$t.addClass('tablesorter-reorder');
|
||||||
|
startReorder(evt, $t);
|
||||||
|
}, wo.reorder_delay);
|
||||||
|
};
|
||||||
|
|
||||||
|
console.log( c.$headers.last().hasClass(noReorderLast) );
|
||||||
|
|
||||||
|
if ( c.$headers.last().hasClass(noReorderLast) ) {
|
||||||
|
offsets.push( offsets[ offsets.length - 1 ] );
|
||||||
|
} else {
|
||||||
|
offsets.push( c.$table.offset().left + c.$table.outerWidth() );
|
||||||
|
}
|
||||||
|
|
||||||
|
c.$headers.not('.' + wo.reorder_noReorder).bind('mousedown.reorder', function(e){
|
||||||
|
mdown(e, this);
|
||||||
|
});
|
||||||
|
|
||||||
|
$(document)
|
||||||
|
.bind('mousemove.reorder', function(e){
|
||||||
|
if (startIndex !== -1){
|
||||||
|
var c = { left : e.pageX - clickOffset[0] };
|
||||||
|
endIndex = -1;
|
||||||
|
if (/y/.test(wo.reorder_axis)) {
|
||||||
|
c.top = e.pageY - clickOffset[1];
|
||||||
|
}
|
||||||
|
$helper.css(c);
|
||||||
|
positionBar(e);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.add( c.$headers )
|
||||||
|
.bind('mouseup.reorder', function(){
|
||||||
|
clearTimeout(timer);
|
||||||
|
if (startIndex !== -1 && endIndex !== -1){
|
||||||
|
finishReorder();
|
||||||
|
} else {
|
||||||
|
startIndex = -1;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// has sticky headers?
|
||||||
|
c.$table.bind('stickyHeadersInit', function(){
|
||||||
|
wo.$sticky.find('thead').children().not('.' + wo.reorder_noReorder).bind('mousedown.reorder', function(e){
|
||||||
|
mdown(e, this);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// add mouse coordinates
|
||||||
|
$x = $('#main h1:last'); $(document).mousemove(function(e){ $x.html( e.pageX ); });
|
||||||
|
|
||||||
|
})(jQuery);
|
||||||
10
bower.json
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"name": "tablesorter",
|
||||||
|
"version": "2.22.1",
|
||||||
|
"dependencies": {
|
||||||
|
"jquery": ">=1.2.6"
|
||||||
|
},
|
||||||
|
"main": [
|
||||||
|
"dist/js/jquery.tablesorter.combined.js"
|
||||||
|
]
|
||||||
|
}
|
||||||
2
changelog.txt
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
Change log moved to the wiki documentation pages:
|
||||||
|
https://github.com/Mottie/tablesorter/wiki/Changes
|
||||||
322
css/bootstrap.less
vendored
Normal file
@ -0,0 +1,322 @@
|
|||||||
|
/* Tablesorter Custom Bootstrap LESS Theme by Rob Garrison
|
||||||
|
|
||||||
|
To create your own theme, modify the code below and run it through
|
||||||
|
a LESS compiler, like this one: http://leafo.net/lessphp/editor.html
|
||||||
|
or download less.js from http://lesscss.org/
|
||||||
|
|
||||||
|
Test out these custom less files live
|
||||||
|
Basic Theme : http://codepen.io/Mottie/pen/eqBbn
|
||||||
|
Bootstrap : http://codepen.io/Mottie/pen/Ltzpi
|
||||||
|
Metro Style : http://codepen.io/Mottie/pen/gCslk
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*** theme ***/
|
||||||
|
@theme : tablesorter-bootstrap;
|
||||||
|
|
||||||
|
/*** fonts ***/
|
||||||
|
@tableHeaderFont : 14px bold Arial, Sans-serif;
|
||||||
|
@tableBodyFont : 14px "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||||
|
|
||||||
|
/*** color definitions ***/
|
||||||
|
/* for best results, only change the hue (240),
|
||||||
|
leave the saturation (60%) and luminosity (80%) alone
|
||||||
|
pick the color from here: http://hslpicker.com/#99E699 */
|
||||||
|
@headerBackground : hsl(240, 60%, 80%);
|
||||||
|
@borderAndBackground : #cdcdcd;
|
||||||
|
@overallBorder : @borderAndBackground 1px solid;
|
||||||
|
@headerTextColor : #000;
|
||||||
|
|
||||||
|
@bodyBackground : #fff;
|
||||||
|
@bodyTextColor : #000;
|
||||||
|
|
||||||
|
@headerAsc : darken(spin(@headerBackground, 5), 10%); /* darken(@headerBackground, 10%); */
|
||||||
|
@headerDesc : lighten(spin(@headerBackground, -5), 10%); /* desaturate(@headerAsc, 5%); */
|
||||||
|
|
||||||
|
@captionBackground : #fff; /* it might be best to match the document body background color here */
|
||||||
|
@errorBackground : #e6bf99; /* ajax error message (added to thead) */
|
||||||
|
|
||||||
|
@filterCellBackground : #eee;
|
||||||
|
@filterElementTextColor: #333;
|
||||||
|
@filterElementBkgd : #fff;
|
||||||
|
@filterElementBorder : 1px solid #bbb;
|
||||||
|
@filterTransitionTime : 0.1s;
|
||||||
|
@filterRowHiddenHeight : 4px; /* becomes height using padding (so it's divided by 2) */
|
||||||
|
|
||||||
|
@overallPadding : 4px;
|
||||||
|
/* 20px should be slightly wider than the icon width to avoid overlap */
|
||||||
|
@headerPadding : 4px 20px 4px 4px;
|
||||||
|
@headerMargin : 0 0 18px;
|
||||||
|
|
||||||
|
/* url(icons/loading.gif); */
|
||||||
|
@processingIcon : url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=');
|
||||||
|
|
||||||
|
/* zebra striping */
|
||||||
|
.allRows {
|
||||||
|
background-color: @bodyBackground;
|
||||||
|
color: @bodyTextColor;
|
||||||
|
}
|
||||||
|
.evenRows {
|
||||||
|
background-color: lighten(@headerBackground, 35%);
|
||||||
|
}
|
||||||
|
.oddRows {
|
||||||
|
background-color: lighten(@headerBackground, 18%);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered rows */
|
||||||
|
.oddHovered {
|
||||||
|
background-color: desaturate(@headerBackground, 60%);
|
||||||
|
}
|
||||||
|
.evenHovered {
|
||||||
|
background-color: lighten( desaturate(@headerBackground, 60%), 10% );
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Columns widget */
|
||||||
|
@primaryOdd : spin(@headerBackground, 10); /* saturate( darken( desaturate(@headerBackground, 10%), 10% ), 30%); */
|
||||||
|
@primaryEven : lighten( @primaryOdd, 10% );
|
||||||
|
@secondaryOdd : @primaryEven;
|
||||||
|
@secondaryEven : lighten( @primaryEven, 5% );
|
||||||
|
@tertiaryOdd : @secondaryEven;
|
||||||
|
@tertiaryEven : lighten( @secondaryEven, 5% );
|
||||||
|
|
||||||
|
/* Filter widget transition */
|
||||||
|
.filterWidgetTransition {
|
||||||
|
-webkit-transition: line-height @filterTransitionTime ease;
|
||||||
|
-moz-transition: line-height @filterTransitionTime ease;
|
||||||
|
-o-transition: line-height @filterTransitionTime ease;
|
||||||
|
transition: line-height @filterTransitionTime ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*** icon block ***/
|
||||||
|
.iconPosition {
|
||||||
|
font-size: 11px;
|
||||||
|
position: absolute;
|
||||||
|
right: 2px;
|
||||||
|
top: 50%;
|
||||||
|
margin-top: -7px; /* half the icon height; older IE doesn't like this */
|
||||||
|
width: 14px;
|
||||||
|
height: 14px;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
line-height: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* black */
|
||||||
|
@unsortedBlack : url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAOCAMAAADOvxanAAAAVFBMVEUAAABCQkJZWVkZGRnJyckgICAZGRkZGRn8/PweHh4dHR0aGhoaGhpUVFQbGxvQ0NDc3NxMTExSUlIbGxvr6+s4ODhKSkogICAtLS00NDQzMzMnJydSEPrQAAAAGHRSTlMA1ssZRLgdAQbDyisqsZo8QdXUq0r9xPepSRwiAAAAX0lEQVQI13XHSQKAIAwEwQAKxn13Ev7/T2Pu9qmarJKPXIicI4PH4hxaKNrhm2S8bJK5h4YzKHrzJNtK6yYT/TdXzpS5zuYg4MSQYF6i4IHExdw1UVRi05HPrrvT53a+qyMFC9t04gcAAAAASUVORK5CYII=);
|
||||||
|
|
||||||
|
/* white */
|
||||||
|
@unsortedWhite : url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAOBAMAAAALT/umAAAAKlBMVEUAAAD///////////////////////////////////////////////////+Gu8ovAAAADXRSTlMA4EXKBtQqvR0+sxmalc142gAAAFdJREFUCNdjYGDoamAAAjZbMxCVfvd6AgMDd+3du9UMDKx3hWSvMjBwXZww8RYDGuC53NB8h4GB8a617UUGBs7Yu3cjGRhYVO9eVQFKOskKOQApFmUgBwBZ+xXRTttNdAAAAABJRU5ErkJggg==);
|
||||||
|
|
||||||
|
/* automatically choose the correct arrow/text color */
|
||||||
|
.headerText (@a) when (lightness(@a) >= 50%) {
|
||||||
|
color: @headerTextColor;
|
||||||
|
}
|
||||||
|
.headerText (@a) when (lightness(@a) < 50%) {
|
||||||
|
color: lighten(@headerTextColor, 90%);
|
||||||
|
}
|
||||||
|
.unsorted (@a) when (lightness(@a) >= 50%) {
|
||||||
|
background-image: @unsortedBlack;
|
||||||
|
color: @headerTextColor;
|
||||||
|
}
|
||||||
|
.unsorted (@a) when (lightness(@a) < 50%) {
|
||||||
|
background-image: @unsortedWhite;
|
||||||
|
color: lighten(@headerTextColor, 90%);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* variable theme name - requires less.js 1.3+;
|
||||||
|
or just replace (!".@{theme}") with the contents of @theme
|
||||||
|
*/
|
||||||
|
.@{theme} {
|
||||||
|
font: @tableBodyFont;
|
||||||
|
background-color: @borderAndBackground;
|
||||||
|
width: 100%;
|
||||||
|
|
||||||
|
/* style th's outside of the thead */
|
||||||
|
th, thead td {
|
||||||
|
font: @tableHeaderFont;
|
||||||
|
font-weight: bold;
|
||||||
|
background-color: @headerBackground;
|
||||||
|
.headerText(@headerBackground);
|
||||||
|
border-collapse: collapse;
|
||||||
|
margin: @headerMargin;
|
||||||
|
padding: @overallPadding;
|
||||||
|
}
|
||||||
|
|
||||||
|
tbody td, tfoot th, tfoot td {
|
||||||
|
padding: @overallPadding;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* style header */
|
||||||
|
.tablesorter-header {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-header-inner {
|
||||||
|
position: relative;
|
||||||
|
padding: @headerPadding;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* bootstrap uses <i> for icons */
|
||||||
|
.tablesorter-header-inner i.tablesorter-icon {
|
||||||
|
.iconPosition
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-header.sorter-false {
|
||||||
|
background-image: none;
|
||||||
|
cursor: default;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-headerAsc {
|
||||||
|
background-color: @headerAsc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-headerDesc {
|
||||||
|
background-color: @headerDesc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bootstrap-icon-unsorted {
|
||||||
|
.unsorted(@headerBackground);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* tfoot */
|
||||||
|
tfoot .tablesorter-headerAsc,
|
||||||
|
tfoot .tablesorter-headerDesc {
|
||||||
|
/* remove sort arrows from footer */
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* optional disabled input styling */
|
||||||
|
.disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* body */
|
||||||
|
tbody {
|
||||||
|
|
||||||
|
td {
|
||||||
|
.allRows;
|
||||||
|
padding: @overallPadding;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zebra Widget - row alternating colors */
|
||||||
|
tr.odd > td {
|
||||||
|
.oddRows;
|
||||||
|
}
|
||||||
|
tr.even > td {
|
||||||
|
.evenRows;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered row colors
|
||||||
|
you'll need to add additional lines for
|
||||||
|
rows with more than 2 child rows
|
||||||
|
*/
|
||||||
|
tbody > tr.hover > td,
|
||||||
|
tbody > tr:hover > td,
|
||||||
|
tbody > tr:hover + tr.tablesorter-childRow > td,
|
||||||
|
tbody > tr:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td,
|
||||||
|
tbody > tr.even.hover > td,
|
||||||
|
tbody > tr.even:hover > td,
|
||||||
|
tbody > tr.even:hover + tr.tablesorter-childRow > td,
|
||||||
|
tbody > tr.even:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
|
||||||
|
.evenHovered;
|
||||||
|
}
|
||||||
|
tbody > tr.odd.hover > td,
|
||||||
|
tbody > tr.odd:hover > td,
|
||||||
|
tbody > tr.odd:hover + tr.tablesorter-childRow > td,
|
||||||
|
tbody > tr.odd:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
|
||||||
|
.oddHovered;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* table processing indicator - indeterminate spinner */
|
||||||
|
.tablesorter-processing {
|
||||||
|
background-image: @processingIcon;
|
||||||
|
background-position: center center;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Column Widget - column sort colors */
|
||||||
|
tr.odd td.primary {
|
||||||
|
background-color: @primaryOdd;
|
||||||
|
}
|
||||||
|
td.primary, tr.even td.primary {
|
||||||
|
background-color: @primaryEven;
|
||||||
|
}
|
||||||
|
tr.odd td.secondary {
|
||||||
|
background-color: @secondaryOdd;
|
||||||
|
}
|
||||||
|
td.secondary, tr.even td.secondary {
|
||||||
|
background-color: @secondaryEven;
|
||||||
|
}
|
||||||
|
tr.odd td.tertiary {
|
||||||
|
background-color: @tertiaryOdd;
|
||||||
|
}
|
||||||
|
td.tertiary, tr.even td.tertiary {
|
||||||
|
background-color: @tertiaryEven;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption (non-theme matching) */
|
||||||
|
caption {
|
||||||
|
background-color: @captionBackground ;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-filter-row input,
|
||||||
|
.tablesorter-filter-row select{
|
||||||
|
width: 98%;
|
||||||
|
margin: 0;
|
||||||
|
padding: @overallPadding;
|
||||||
|
color: @filterElementTextColor;
|
||||||
|
background-color: @filterElementBkgd;
|
||||||
|
border: @filterElementBorder;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
.filterWidgetTransition;
|
||||||
|
}
|
||||||
|
.tablesorter-filter-row {
|
||||||
|
background-color: @filterCellBackground;
|
||||||
|
}
|
||||||
|
.tablesorter-filter-row td {
|
||||||
|
text-align: center;
|
||||||
|
background-color: @filterCellBackground;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center; /* center the input */
|
||||||
|
.filterWidgetTransition;
|
||||||
|
}
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-filter-row.hideme td {
|
||||||
|
padding: @filterRowHiddenHeight / 2;
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: @errorBackground;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
64
css/dragtable.mod.css
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
/*
|
||||||
|
* dragtable
|
||||||
|
* @Version 2.0.14 MOD
|
||||||
|
* default css
|
||||||
|
*/
|
||||||
|
.dragtable-sortable {
|
||||||
|
list-style-type: none;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
-moz-user-select: none;
|
||||||
|
z-index: 10;
|
||||||
|
}
|
||||||
|
.dragtable-sortable li {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
float: left;
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
.dragtable-sortable table {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
.dragtable-sortable th, .dragtable-sortable td {
|
||||||
|
border-left: 0px;
|
||||||
|
}
|
||||||
|
.dragtable-sortable li:first-child th, .dragtable-sortable li:first-child td {
|
||||||
|
border-left: 1px solid #CCC;
|
||||||
|
}
|
||||||
|
.dragtable-handle-selected {
|
||||||
|
/* table-handle class while actively dragging a column */
|
||||||
|
}
|
||||||
|
.ui-sortable-helper {
|
||||||
|
opacity: 0.7;
|
||||||
|
filter: alpha(opacity=70);
|
||||||
|
}
|
||||||
|
.ui-sortable-placeholder {
|
||||||
|
-moz-box-shadow: 4px 5px 4px rgba(0,0,0,0.2) inset;
|
||||||
|
-webkit-box-shadow: 4px 5px 4px rgba(0,0,0,0.2) inset;
|
||||||
|
box-shadow: 4px 5px 4px rgba(0,0,0,0.2) inset;
|
||||||
|
border-bottom: 1px solid rgba(0,0,0,0.2);
|
||||||
|
border-top: 1px solid rgba(0,0,0,0.2);
|
||||||
|
visibility: visible !important;
|
||||||
|
/* change the background color here to match the tablesorter theme */
|
||||||
|
background: #EFEFEF;
|
||||||
|
}
|
||||||
|
.ui-sortable-placeholder * {
|
||||||
|
opacity: 0.0;
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
.table-handle, .table-handle-disabled {
|
||||||
|
/* background-image: url(images/dragtable-handle.png); */
|
||||||
|
/* background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAANAQMAAAC5Li2yAAAABlBMVEUAAAAzMzPI8eYgAAAAAnRSTlMAzORBQ6MAAAAOSURBVAjXYwABByyYAQAQWgFBLN2RnwAAAABJRU5ErkJggg=='); */
|
||||||
|
background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyIiBoZWlnaHQ9IjEzIj48cmVjdCBzdHlsZT0iZmlsbDojMzMzO2ZpbGwtb3BhY2l0eTouODsiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHg9IjEiIHk9IjIiLz4JPHJlY3Qgc3R5bGU9ImZpbGw6IzMzMztmaWxsLW9wYWNpdHk6Ljg7IiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4PSIxIiB5PSI0Ii8+CTxyZWN0IHN0eWxlPSJmaWxsOiMzMzM7ZmlsbC1vcGFjaXR5Oi44OyIgd2lkdGg9IjEiIGhlaWdodD0iMSIgeD0iMSIgeT0iNiIvPjxyZWN0IHN0eWxlPSJmaWxsOiMzMzM7ZmlsbC1vcGFjaXR5Oi44OyIgd2lkdGg9IjEiIGhlaWdodD0iMSIgeD0iMSIgeT0iOCIvPjxyZWN0IHN0eWxlPSJmaWxsOiMzMzM7ZmlsbC1vcGFjaXR5Oi44OyIgd2lkdGg9IjEiIGhlaWdodD0iMSIgeD0iMSIgeT0iMTAiLz48L3N2Zz4=);
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
height: 13px;
|
||||||
|
margin: 0 1px;
|
||||||
|
cursor: move;
|
||||||
|
}
|
||||||
|
.table-handle-disabled {
|
||||||
|
opacity: 0;
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
.dragtable-sortable table {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
183
css/filter.formatter.css
Normal file
@ -0,0 +1,183 @@
|
|||||||
|
/**** Filter Formatter Elements ****/
|
||||||
|
.tablesorter .tablesorter-filter-row td {
|
||||||
|
text-align: center;
|
||||||
|
font-size: 0.9em;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**** Sliders ****/
|
||||||
|
/* shrink the sliders to look nicer inside of a table cell */
|
||||||
|
.tablesorter .ui-slider, .tablesorter input.range {
|
||||||
|
width: 90%;
|
||||||
|
margin: 2px auto 2px auto; /* add enough top margin so the tooltips will fit */
|
||||||
|
font-size: 0.8em;
|
||||||
|
}
|
||||||
|
.tablesorter .ui-slider {
|
||||||
|
top: 12px;
|
||||||
|
}
|
||||||
|
.tablesorter .ui-slider .ui-slider-handle {
|
||||||
|
width: 0.9em;
|
||||||
|
height: 0.9em;
|
||||||
|
}
|
||||||
|
.tablesorter .ui-datepicker {
|
||||||
|
font-size: 0.8em;
|
||||||
|
}
|
||||||
|
.tablesorter .ui-slider-horizontal {
|
||||||
|
height: 0.5em;
|
||||||
|
}
|
||||||
|
/* Add tooltips to slider handles */
|
||||||
|
.tablesorter .value-popup:after {
|
||||||
|
content : attr(data-value);
|
||||||
|
position: absolute;
|
||||||
|
bottom: 14px;
|
||||||
|
left: -7px;
|
||||||
|
min-width: 18px;
|
||||||
|
height: 12px;
|
||||||
|
background-color: #444;
|
||||||
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#444444), to(#999999));
|
||||||
|
background-image: -webkit-linear-gradient(top, #444, #999);
|
||||||
|
background-image: -moz-linear-gradient(top, #444, #999);
|
||||||
|
background-image: -o-linear-gradient(top, #444, #999);
|
||||||
|
background-image: linear-gradient(to bottom, #444, #999);
|
||||||
|
-webkit-border-radius: 3px;
|
||||||
|
border-radius: 3px;
|
||||||
|
-webkit-background-clip: padding-box; background-clip: padding-box;
|
||||||
|
-webkit-box-shadow: 0px 0px 4px 0px #777;
|
||||||
|
box-shadow: 0px 0px 4px 0px #777;
|
||||||
|
border: #444 1px solid;
|
||||||
|
color: #fff;
|
||||||
|
font: 1em/1.1em Arial, Sans-Serif;
|
||||||
|
padding: 1px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.tablesorter .value-popup:before {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
width: 0;
|
||||||
|
height: 0;
|
||||||
|
border-top: 8px solid #777;
|
||||||
|
border-left: 8px solid transparent;
|
||||||
|
border-right: 8px solid transparent;
|
||||||
|
top: -8px;
|
||||||
|
left: 50%;
|
||||||
|
margin-left: -8px;
|
||||||
|
margin-top: -1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**** Date Picker ****/
|
||||||
|
.tablesorter .dateFrom, .tablesorter .dateTo {
|
||||||
|
width: 80px;
|
||||||
|
margin: 2px 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**** Color Picker/HTML5Number Toggle button ****/
|
||||||
|
.tablesorter .button {
|
||||||
|
width: 14px;
|
||||||
|
height: 14px;
|
||||||
|
background: #fcfff4;
|
||||||
|
background: -webkit-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
|
||||||
|
background: -moz-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
|
||||||
|
background: -o-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
|
||||||
|
background: -ms-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
|
||||||
|
background: linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fcfff4', endColorstr='#b3bead', GradientType=0 );
|
||||||
|
margin: 1px 5px 1px 1px;
|
||||||
|
-webkit-border-radius: 25px;
|
||||||
|
-moz-border-radius: 25px;
|
||||||
|
border-radius: 25px;
|
||||||
|
-webkit-box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5);
|
||||||
|
-moz-box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5);
|
||||||
|
box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5);
|
||||||
|
position: relative;
|
||||||
|
top: 3px;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter .button label {
|
||||||
|
cursor: pointer;
|
||||||
|
position: absolute;
|
||||||
|
width: 10px;
|
||||||
|
height: 10px;
|
||||||
|
-webkit-border-radius: 25px;
|
||||||
|
-moz-border-radius: 25px;
|
||||||
|
border-radius: 25px;
|
||||||
|
left: 2px;
|
||||||
|
top: 2px;
|
||||||
|
-webkit-box-shadow: inset 0px 1px 1px rgba(0,0,0,0.5), 0px 1px 0px rgba(255,255,255,1);
|
||||||
|
-moz-box-shadow: inset 0px 1px 1px rgba(0,0,0,0.5), 0px 1px 0px rgba(255,255,255,1);
|
||||||
|
box-shadow: inset 0px 1px 1px rgba(0,0,0,0.5), 0px 1px 0px rgba(255,255,255,1);
|
||||||
|
background: #45484d;
|
||||||
|
background: -webkit-linear-gradient(top, #222 0%, #45484d 100%);
|
||||||
|
background: -moz-linear-gradient(top, #222 0%, #45484d 100%);
|
||||||
|
background: -o-linear-gradient(top, #222 0%, #45484d 100%);
|
||||||
|
background: -ms-linear-gradient(top, #222 0%, #45484d 100%);
|
||||||
|
background: linear-gradient(top, #222 0%, #45484d 100%);
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#222', endColorstr='#45484d', GradientType=0 );
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter .button label:after {
|
||||||
|
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
opacity: 0;
|
||||||
|
content: '';
|
||||||
|
position: absolute;
|
||||||
|
width: 8px;
|
||||||
|
height: 8px;
|
||||||
|
background: #55f;
|
||||||
|
background: -webkit-linear-gradient(top, #aaf 0%, #55f 100%);
|
||||||
|
background: -moz-linear-gradient(top, #aaf 0%, #55f 100%);
|
||||||
|
background: -o-linear-gradient(top, #aaf 0%, #55f 100%);
|
||||||
|
background: -ms-linear-gradient(top, #aaf 0%, #55f 100%);
|
||||||
|
background: linear-gradient(top, #aaf 0%, #55f 100%);
|
||||||
|
-webkit-border-radius: 25px;
|
||||||
|
-moz-border-radius: 25px;
|
||||||
|
border-radius: 25px;
|
||||||
|
top: 1px;
|
||||||
|
left: 1px;
|
||||||
|
-webkit-box-shadow: inset 0px 1px 1px #fff, 0px 1px 3px rgba(0,0,0,0.5);
|
||||||
|
-moz-box-shadow: inset 0px 1px 1px #fff, 0px 1px 3px rgba(0,0,0,0.5);
|
||||||
|
box-shadow: inset 0px 1px 1px #fff, 0px 1px 3px rgba(0,0,0,0.5);
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter .button label:hover::after {
|
||||||
|
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
|
||||||
|
filter: alpha(opacity=30);
|
||||||
|
opacity: 0.3;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter .button input[type=checkbox] {
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter .button input[type=checkbox]:checked + label:after {
|
||||||
|
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
|
||||||
|
filter: alpha(opacity=100);
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter .colorpicker {
|
||||||
|
width: 30px;
|
||||||
|
height: 18px;
|
||||||
|
}
|
||||||
|
.tablesorter .ui-spinner-input {
|
||||||
|
width: 100px;
|
||||||
|
height: 18px;
|
||||||
|
}
|
||||||
|
.tablesorter .currentColor, .tablesorter .ui-spinner {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.tablesorter input.number {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hide filter row */
|
||||||
|
.tablesorter .tablesorter-filter-row.hideme td * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
BIN
css/images/black-asc.gif
Normal file
|
After Width: | Height: | Size: 48 B |
BIN
css/images/black-desc.gif
Normal file
|
After Width: | Height: | Size: 49 B |
BIN
css/images/black-unsorted.gif
Normal file
|
After Width: | Height: | Size: 54 B |
BIN
css/images/bootstrap-black-unsorted.png
Normal file
|
After Width: | Height: | Size: 284 B |
BIN
css/images/bootstrap-white-unsorted.png
Normal file
|
After Width: | Height: | Size: 223 B |
BIN
css/images/dragtable-handle.png
Normal file
|
After Width: | Height: | Size: 103 B |
7
css/images/dragtable-handle.svg
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="2" height="13">
|
||||||
|
<rect style="fill:#333;fill-opacity:.8;" width="1" height="1" x="1" y="2"/>
|
||||||
|
<rect style="fill:#333;fill-opacity:.8;" width="1" height="1" x="1" y="4"/>
|
||||||
|
<rect style="fill:#333;fill-opacity:.8;" width="1" height="1" x="1" y="6"/>
|
||||||
|
<rect style="fill:#333;fill-opacity:.8;" width="1" height="1" x="1" y="8"/>
|
||||||
|
<rect style="fill:#333;fill-opacity:.8;" width="1" height="1" x="1" y="10"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 455 B |
BIN
css/images/dropbox-asc-hovered.png
Normal file
|
After Width: | Height: | Size: 275 B |
BIN
css/images/dropbox-asc.png
Normal file
|
After Width: | Height: | Size: 278 B |
BIN
css/images/dropbox-desc-hovered.png
Normal file
|
After Width: | Height: | Size: 273 B |
BIN
css/images/dropbox-desc.png
Normal file
|
After Width: | Height: | Size: 277 B |
BIN
css/images/green-asc.gif
Normal file
|
After Width: | Height: | Size: 283 B |
BIN
css/images/green-desc.gif
Normal file
|
After Width: | Height: | Size: 283 B |
BIN
css/images/green-header.gif
Normal file
|
After Width: | Height: | Size: 513 B |
BIN
css/images/green-unsorted.gif
Normal file
|
After Width: | Height: | Size: 520 B |
BIN
css/images/ice-asc.gif
Normal file
|
After Width: | Height: | Size: 285 B |
BIN
css/images/ice-desc.gif
Normal file
|
After Width: | Height: | Size: 285 B |
BIN
css/images/ice-unsorted.gif
Normal file
|
After Width: | Height: | Size: 180 B |
BIN
css/images/metro-black-asc.png
Normal file
|
After Width: | Height: | Size: 213 B |
BIN
css/images/metro-black-desc.png
Normal file
|
After Width: | Height: | Size: 232 B |
BIN
css/images/metro-loading.gif
Normal file
|
After Width: | Height: | Size: 673 B |
BIN
css/images/metro-unsorted.png
Normal file
|
After Width: | Height: | Size: 181 B |
BIN
css/images/metro-white-asc.png
Normal file
|
After Width: | Height: | Size: 209 B |
BIN
css/images/metro-white-desc.png
Normal file
|
After Width: | Height: | Size: 224 B |
BIN
css/images/white-asc.gif
Normal file
|
After Width: | Height: | Size: 48 B |
BIN
css/images/white-desc.gif
Normal file
|
After Width: | Height: | Size: 49 B |
BIN
css/images/white-unsorted.gif
Normal file
|
After Width: | Height: | Size: 54 B |
357
css/metro.less
Normal file
@ -0,0 +1,357 @@
|
|||||||
|
/* Tablesorter Custom Metro LESS Theme by Rob Garrison
|
||||||
|
|
||||||
|
To create your own theme, modify the code below and run it through
|
||||||
|
a LESS compiler, like this one: http://leafo.net/lessphp/editor.html
|
||||||
|
or download less.js from http://lesscss.org/
|
||||||
|
|
||||||
|
Test out these custom less files live
|
||||||
|
Basic Theme : http://codepen.io/Mottie/pen/eqBbn
|
||||||
|
Bootstrap : http://codepen.io/Mottie/pen/Ltzpi
|
||||||
|
Metro Style : http://codepen.io/Mottie/pen/gCslk
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*** theme ***/
|
||||||
|
@theme : tablesorter-metro;
|
||||||
|
|
||||||
|
/*** fonts ***/
|
||||||
|
@tableHeaderFont : 14px 'Segoe UI Semilight', 'Open Sans', Verdana, Arial, Helvetica, sans-serif;
|
||||||
|
@tableBodyFont : 14px 'Segoe UI Semilight', 'Open Sans', Verdana, Arial, Helvetica, sans-serif;
|
||||||
|
|
||||||
|
/*** color definitions ***/
|
||||||
|
/* for best results, only change the hue (120),
|
||||||
|
leave the saturation (60%) and luminosity (75%) alone
|
||||||
|
pick the color from here: http://hslpicker.com/#825a2b
|
||||||
|
|
||||||
|
Inspired by http://www.jtable.org/ metro themes:
|
||||||
|
Blue: hsl(212, 86%, 35%)
|
||||||
|
Brown hsl(32, 50%, 30%)
|
||||||
|
Crimson hsl(0, 100%, 38%)
|
||||||
|
Dark Grey hsl(0, 0%, 27%)
|
||||||
|
Dark Orange hsl(13, 70%, 51%)
|
||||||
|
Green hsl(120, 100%, 32%)
|
||||||
|
Light Gray hsl(0, 0%, 44%)
|
||||||
|
Pink hsl(297, 100%, 33%)
|
||||||
|
Purple hsl(257, 51%, 48%)
|
||||||
|
Red hsl(5, 100%, 40%)
|
||||||
|
|
||||||
|
*/
|
||||||
|
@headerBackground : hsl(32, 50%, 30%);
|
||||||
|
@borderAndBackground : #cdcdcd;
|
||||||
|
@headerTextColor : #eee;
|
||||||
|
|
||||||
|
@bodyBackground : #fff;
|
||||||
|
@bodyTextColor : #000;
|
||||||
|
|
||||||
|
@captionBackground : #fff; /* it might be best to match the document body background color here */
|
||||||
|
@errorBackground : #e6bf99; /* ajax error message (added to thead) */
|
||||||
|
|
||||||
|
@filterCellBackground : #eee;
|
||||||
|
@filterElementTextColor: #333;
|
||||||
|
@filterElementBkgd : #fff;
|
||||||
|
@filterElementBorder : 1px solid #bbb;
|
||||||
|
@filterTransitionTime : 0.1s;
|
||||||
|
@filterRowHiddenHeight : 4px; /* becomes height using padding (so it's divided by 2) */
|
||||||
|
|
||||||
|
@overallPadding : 4px;
|
||||||
|
/* 20px should be slightly wider than the icon width to avoid overlap */
|
||||||
|
@headerPadding : 4px 20px 4px 4px;
|
||||||
|
|
||||||
|
/* url(icons/loading.gif); */
|
||||||
|
@processingIcon : url('data:image/gif;base64,R0lGODlhEAAQAPIAAP///1VVVdbW1oCAgFVVVZaWlqurq7a2tiH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCgAAACwAAAAAEAAQAAADMwi63P4wyklrE2MIOggZnAdOmGYJRbExwroUmcG2LmDEwnHQLVsYOd2mBzkYDAdKa+dIAAAh+QQJCgAAACwAAAAAEAAQAAADNAi63P5OjCEgG4QMu7DmikRxQlFUYDEZIGBMRVsaqHwctXXf7WEYB4Ag1xjihkMZsiUkKhIAIfkECQoAAAAsAAAAABAAEAAAAzYIujIjK8pByJDMlFYvBoVjHA70GU7xSUJhmKtwHPAKzLO9HMaoKwJZ7Rf8AYPDDzKpZBqfvwQAIfkECQoAAAAsAAAAABAAEAAAAzMIumIlK8oyhpHsnFZfhYumCYUhDAQxRIdhHBGqRoKw0R8DYlJd8z0fMDgsGo/IpHI5TAAAIfkECQoAAAAsAAAAABAAEAAAAzIIunInK0rnZBTwGPNMgQwmdsNgXGJUlIWEuR5oWUIpz8pAEAMe6TwfwyYsGo/IpFKSAAAh+QQJCgAAACwAAAAAEAAQAAADMwi6IMKQORfjdOe82p4wGccc4CEuQradylesojEMBgsUc2G7sDX3lQGBMLAJibufbSlKAAAh+QQJCgAAACwAAAAAEAAQAAADMgi63P7wCRHZnFVdmgHu2nFwlWCI3WGc3TSWhUFGxTAUkGCbtgENBMJAEJsxgMLWzpEAACH5BAkKAAAALAAAAAAQABAAAAMyCLrc/jDKSatlQtScKdceCAjDII7HcQ4EMTCpyrCuUBjCYRgHVtqlAiB1YhiCnlsRkAAAOwAAAAAAAAAAAA==');
|
||||||
|
|
||||||
|
/* zebra striping */
|
||||||
|
.allRows {
|
||||||
|
background-color: @bodyBackground;
|
||||||
|
color: @bodyTextColor;
|
||||||
|
}
|
||||||
|
.evenRows {
|
||||||
|
background-color: lighten( desaturate(@headerBackground, 80%), 70%);
|
||||||
|
color: @bodyTextColor;
|
||||||
|
}
|
||||||
|
.oddRows {
|
||||||
|
background-color: lighten( desaturate(@headerBackground, 80%), 50%);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered rows */
|
||||||
|
.oddHovered {
|
||||||
|
background-color: lighten( desaturate(@headerBackground, 50%), 40%);
|
||||||
|
color: @bodyTextColor;
|
||||||
|
}
|
||||||
|
.evenHovered {
|
||||||
|
background-color: lighten( desaturate(@headerBackground, 50%), 30%);
|
||||||
|
color: @bodyTextColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Columns widget */
|
||||||
|
@primaryOdd : lighten( spin(@headerBackground, 10), 40%);
|
||||||
|
@primaryEven : lighten( @primaryOdd, 8% );
|
||||||
|
@secondaryOdd : @primaryEven;
|
||||||
|
@secondaryEven : lighten( @primaryEven, 8% );
|
||||||
|
@tertiaryOdd : @secondaryEven;
|
||||||
|
@tertiaryEven : lighten( @secondaryEven, 8% );
|
||||||
|
|
||||||
|
/* Filter widget transition */
|
||||||
|
.filterWidgetTransition {
|
||||||
|
-webkit-transition: line-height @filterTransitionTime ease;
|
||||||
|
-moz-transition: line-height @filterTransitionTime ease;
|
||||||
|
-o-transition: line-height @filterTransitionTime ease;
|
||||||
|
transition: line-height @filterTransitionTime ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*** Arrows ***/
|
||||||
|
@arrowPosition : right 5px center;
|
||||||
|
|
||||||
|
/* black */
|
||||||
|
@unsortedBlack : url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQBAMAAADQT4M0AAAAIVBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABt0UjBAAAACnRSTlMAMwsqXt+gIBUGxGoDMAAAAFlJREFUCNctzC0SQAAUReEzGNQ3AlHRiSRZFCVZYgeswRL8hLdK7834wj3tAlGP6y7fYHpKS6w6WwbVG0I1NZVnZPG8/DYxOYlnhUYkA06R1s9ESsxR4NIdPhkPFDFYuEnMAAAAAElFTkSuQmCC);
|
||||||
|
@sortAscBlack : url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQBAMAAADQT4M0AAAAIVBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABt0UjBAAAACnRSTlMAMwsqXt+gIBUGxGoDMAAAAFlJREFUCNctzC0SQAAUReEzGNQ3AlHRiSRZFCVZYgeswRL8hLdK7834wj3tAlGP6y7fYHpKS6w6WwbVG0I1NZVnZPG8/DYxOYlnhUYkA06R1s9ESsxR4NIdPhkPFDFYuEnMAAAAAElFTkSuQmCC);
|
||||||
|
@sortDescBlack : url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQBAMAAADQT4M0AAAALVBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADBoCg+AAAADnRSTlMAMiweCQITTvDctZZqaTlM310AAABcSURBVAjXY2BgYEtgAAFHERDJqigUAKSYBQUNgFSioKAYAwOLIBA4MASBKFUGQxAlzAAF+94BwWuGKBC1lIFl3rt3Lx0YGCzevWsGSjK9e6cAUlT3HKyW9wADAwDRrBiDy6bKzwAAAABJRU5ErkJggg==);
|
||||||
|
|
||||||
|
/* white */
|
||||||
|
@unsortedWhite : url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQBAMAAADQT4M0AAAAElBMVEUAAADu7u7u7u7u7u7u7u7u7u7yb344AAAABnRSTlMAMhIHKyAHBrhHAAAATElEQVQI12NgYGBSYAABQ2Ew5SgCIlkFBQOAlKKgoBADA7MgEBgwsIAoB4ZAECXKAAFQHkg9WIejoCBIv4mgoDOQYgZpAxkDNARqEQBTkAYuMZEHPgAAAABJRU5ErkJggg==);
|
||||||
|
@sortAscWhite : url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQBAMAAADQT4M0AAAAHlBMVEUAAADu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u4+jEeEAAAACXRSTlMAMwkqFV7roCD4hW+/AAAAWUlEQVQI1y3MrQ5AABSG4Xd+Rj0jiDabjKZxB6qqaarGNRh27tY5myd8b/uAeML1l2+wPqUlUd0ss+oNoZqG2rOwe15+p5iC1HNAK5IBlUjnZyIlZsxx0QAfzokSZgp96u4AAAAASUVORK5CYII=);
|
||||||
|
@sortDescWhite : url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQBAMAAADQT4M0AAAAJ1BMVEUAAADu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u4RJgHSAAAADHRSTlMAMiweCQITaU7olrlu2HdvAAAAXElEQVQI12NgYGBLYAABRxEQyaooFACkmAUFDYBUoqCgGAMDiyAQODAEgShVBkMQJcwABWvOAMEphmgQtZWBZc6ZMycdGBhszpw5DJRkOnNGAaSo5wRYLXsBAwMAi4YWQHRX4F0AAAAASUVORK5CYII=);
|
||||||
|
|
||||||
|
/* automatically choose the correct arrow/text color */
|
||||||
|
.headerText (@a) when (lightness(@a) >= 50%) {
|
||||||
|
color: @headerTextColor;
|
||||||
|
}
|
||||||
|
.headerText (@a) when (lightness(@a) < 50%) {
|
||||||
|
color: lighten(@headerTextColor, 90%);
|
||||||
|
}
|
||||||
|
.unsorted (@a) when (lightness(@a) >= 50%) {
|
||||||
|
background-image: @unsortedBlack;
|
||||||
|
}
|
||||||
|
.unsorted (@a) when (lightness(@a) < 50%) {
|
||||||
|
background-image: @unsortedWhite;
|
||||||
|
}
|
||||||
|
.sortAsc (@a) when (lightness(@a) >= 50%) {
|
||||||
|
background-image: @sortAscBlack;
|
||||||
|
}
|
||||||
|
.sortAsc (@a) when (lightness(@a) < 50%) {
|
||||||
|
background-image: @sortAscWhite;
|
||||||
|
}
|
||||||
|
.sortDesc (@a) when (lightness(@a) >= 50%) {
|
||||||
|
background-image: @sortDescBlack;
|
||||||
|
}
|
||||||
|
.sortDesc (@a) when (lightness(@a) < 50%) {
|
||||||
|
background-image: @sortDescWhite;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* variable theme name - requires less.js 1.3+;
|
||||||
|
or just replace (!".@{theme}") with the contents of @theme
|
||||||
|
*/
|
||||||
|
.@{theme} {
|
||||||
|
font: @tableBodyFont;
|
||||||
|
background-color: @borderAndBackground;
|
||||||
|
margin: 10px 0 15px;
|
||||||
|
width: 100%;
|
||||||
|
text-align: left;
|
||||||
|
border-spacing: 0;
|
||||||
|
border: 0;
|
||||||
|
|
||||||
|
th, td {
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* style th's outside of the thead */
|
||||||
|
th, thead td {
|
||||||
|
font: @tableHeaderFont;
|
||||||
|
font-weight: bold;
|
||||||
|
background-color: @headerBackground;
|
||||||
|
color: @headerTextColor;
|
||||||
|
.headerText(@headerBackground);
|
||||||
|
border-collapse: collapse;
|
||||||
|
padding: @overallPadding;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dark-row th, .dark-row td, caption.dark-row {
|
||||||
|
background-color: darken( @headerBackground, 10% );
|
||||||
|
}
|
||||||
|
|
||||||
|
tbody td, tfoot th, tfoot td {
|
||||||
|
padding: @overallPadding;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* style header */
|
||||||
|
.tablesorter-header {
|
||||||
|
.unsorted(@headerBackground);
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-position: @arrowPosition;
|
||||||
|
cursor: pointer;
|
||||||
|
white-space: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-header-inner {
|
||||||
|
padding: @headerPadding;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-header.sorter-false {
|
||||||
|
background-image: none;
|
||||||
|
cursor: default;
|
||||||
|
padding: @overallPadding;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-headerAsc {
|
||||||
|
.sortAsc(@headerBackground);
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-headerDesc {
|
||||||
|
.sortDesc(@headerBackground);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tfoot */
|
||||||
|
tfoot .tablesorter-headerAsc,
|
||||||
|
tfoot .tablesorter-headerDesc {
|
||||||
|
/* remove sort arrows from footer */
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* optional disabled input styling */
|
||||||
|
.disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* body */
|
||||||
|
tbody {
|
||||||
|
|
||||||
|
td {
|
||||||
|
.allRows;
|
||||||
|
padding: @overallPadding;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zebra Widget - row alternating colors */
|
||||||
|
tr.odd > td {
|
||||||
|
.oddRows;
|
||||||
|
}
|
||||||
|
tr.even > td {
|
||||||
|
.evenRows;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered row colors
|
||||||
|
you'll need to add additional lines for
|
||||||
|
rows with more than 2 child rows
|
||||||
|
*/
|
||||||
|
tbody > tr.hover > td,
|
||||||
|
tbody > tr:hover > td,
|
||||||
|
tbody > tr:hover + tr.tablesorter-childRow > td,
|
||||||
|
tbody > tr:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td,
|
||||||
|
tbody > tr.even.hover > td,
|
||||||
|
tbody > tr.even:hover > td,
|
||||||
|
tbody > tr.even:hover + tr.tablesorter-childRow > td,
|
||||||
|
tbody > tr.even:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
|
||||||
|
.evenHovered;
|
||||||
|
}
|
||||||
|
tbody > tr.odd.hover > td,
|
||||||
|
tbody > tr.odd:hover > td,
|
||||||
|
tbody > tr.odd:hover + tr.tablesorter-childRow > td,
|
||||||
|
tbody > tr.odd:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
|
||||||
|
.oddHovered;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* table processing indicator - indeterminate spinner */
|
||||||
|
.tablesorter-processing {
|
||||||
|
background-image: @processingIcon;
|
||||||
|
background-position: center center;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* pager */
|
||||||
|
div.tablesorter-pager {
|
||||||
|
button {
|
||||||
|
background-color: lighten( @headerBackground, 7% );
|
||||||
|
color: @headerTextColor;
|
||||||
|
border: lighten( @headerBackground, 15% ) 1px solid;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
button:hover {
|
||||||
|
background-color: lighten( @headerBackground, 15% );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Column Widget - column sort colors */
|
||||||
|
tr.odd td.primary {
|
||||||
|
background-color: @primaryOdd;
|
||||||
|
}
|
||||||
|
td.primary, tr.even td.primary {
|
||||||
|
background-color: @primaryEven;
|
||||||
|
}
|
||||||
|
tr.odd td.secondary {
|
||||||
|
background-color: @secondaryOdd;
|
||||||
|
}
|
||||||
|
td.secondary, tr.even td.secondary {
|
||||||
|
background-color: @secondaryEven;
|
||||||
|
}
|
||||||
|
tr.odd td.tertiary {
|
||||||
|
background-color: @tertiaryOdd;
|
||||||
|
}
|
||||||
|
td.tertiary, tr.even td.tertiary {
|
||||||
|
background-color: @tertiaryEven;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption (non-theme matching) */
|
||||||
|
caption {
|
||||||
|
background-color: @captionBackground ;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-filter-row input,
|
||||||
|
.tablesorter-filter-row select{
|
||||||
|
width: 98%;
|
||||||
|
height: auto;
|
||||||
|
margin: 0;
|
||||||
|
padding: @overallPadding;
|
||||||
|
color: @filterElementTextColor;
|
||||||
|
background-color: @filterElementBkgd;
|
||||||
|
border: @filterElementBorder;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
.filterWidgetTransition;
|
||||||
|
}
|
||||||
|
.tablesorter-filter-row {
|
||||||
|
background-color: @filterCellBackground;
|
||||||
|
}
|
||||||
|
.tablesorter-filter-row td {
|
||||||
|
text-align: center;
|
||||||
|
background-color: @filterCellBackground;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center; /* center the input */
|
||||||
|
.filterWidgetTransition;
|
||||||
|
}
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-filter-row.hideme td {
|
||||||
|
padding: @filterRowHiddenHeight / 2;
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: @errorBackground;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
BIN
css/psd/green-asc.psd
Normal file
BIN
css/psd/green-desc.psd
Normal file
BIN
css/psd/green-unsorted.psd
Normal file
BIN
css/psd/metro-style.psd
Normal file
192
css/theme.black-ice.css
Normal file
@ -0,0 +1,192 @@
|
|||||||
|
/*************
|
||||||
|
Black Ice Theme (by thezoggy)
|
||||||
|
*************/
|
||||||
|
/* overall */
|
||||||
|
.tablesorter-blackice {
|
||||||
|
width: 100%;
|
||||||
|
margin-right: auto;
|
||||||
|
margin-left: auto;
|
||||||
|
font: 11px/18px Arial, Sans-serif;
|
||||||
|
text-align: left;
|
||||||
|
background-color: #000;
|
||||||
|
border-collapse: collapse;
|
||||||
|
border-spacing: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* header */
|
||||||
|
.tablesorter-blackice th,
|
||||||
|
.tablesorter-blackice thead td {
|
||||||
|
padding: 4px;
|
||||||
|
font: 13px/20px Arial, Sans-serif;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #e5e5e5;
|
||||||
|
text-align: left;
|
||||||
|
text-shadow: 0 1px 0 rgba(0, 0, 0, 0.7);
|
||||||
|
background-color: #111;
|
||||||
|
border: 1px solid #232323;
|
||||||
|
}
|
||||||
|
.tablesorter-blackice .header,
|
||||||
|
.tablesorter-blackice .tablesorter-header {
|
||||||
|
padding: 4px 20px 4px 4px;
|
||||||
|
cursor: pointer;
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAJAIAAAP///////yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==);
|
||||||
|
background-position: center right;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
}
|
||||||
|
.tablesorter-blackice .headerSortUp,
|
||||||
|
.tablesorter-blackice .tablesorter-headerSortUp,
|
||||||
|
.tablesorter-blackice .tablesorter-headerAsc {
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
.tablesorter-blackice .headerSortDown,
|
||||||
|
.tablesorter-blackice .tablesorter-headerSortDown,
|
||||||
|
.tablesorter-blackice .tablesorter-headerDesc {
|
||||||
|
color: #fff;
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);
|
||||||
|
}
|
||||||
|
.tablesorter-blackice thead .sorter-false {
|
||||||
|
background-image: none;
|
||||||
|
cursor: default;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tfoot */
|
||||||
|
.tablesorter-blackice tfoot .tablesorter-headerSortUp,
|
||||||
|
.tablesorter-blackice tfoot .tablesorter-headerSortDown,
|
||||||
|
.tablesorter-blackice tfoot .tablesorter-headerAsc,
|
||||||
|
.tablesorter-blackice tfoot .tablesorter-headerDesc {
|
||||||
|
/* remove sort arrows from footer */
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tbody */
|
||||||
|
.tablesorter-blackice td {
|
||||||
|
padding: 4px;
|
||||||
|
color: #ccc;
|
||||||
|
vertical-align: top;
|
||||||
|
background-color: #333;
|
||||||
|
border: 1px solid #232323;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered row colors */
|
||||||
|
.tablesorter-blackice tbody > tr.hover > td,
|
||||||
|
.tablesorter-blackice tbody > tr:hover > td,
|
||||||
|
.tablesorter-blackice tbody > tr.even:hover > td,
|
||||||
|
.tablesorter-blackice tbody > tr.odd:hover > td {
|
||||||
|
background-color: #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* table processing indicator */
|
||||||
|
.tablesorter-blackice .tablesorter-processing {
|
||||||
|
background-position: center center !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
/* background-image: url(images/loading.gif) !important; */
|
||||||
|
background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zebra Widget - row alternating colors */
|
||||||
|
.tablesorter-blackice tr.odd > td {
|
||||||
|
background-color: #333;
|
||||||
|
}
|
||||||
|
.tablesorter-blackice tr.even > td {
|
||||||
|
background-color: #393939;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Column Widget - column sort colors */
|
||||||
|
.tablesorter-blackice td.primary,
|
||||||
|
.tablesorter-blackice tr.odd td.primary {
|
||||||
|
background-color: #2f3a40;
|
||||||
|
}
|
||||||
|
.tablesorter-blackice tr.even td.primary {
|
||||||
|
background-color: #3f4a50;
|
||||||
|
}
|
||||||
|
.tablesorter-blackice td.secondary,
|
||||||
|
.tablesorter-blackice tr.odd td.secondary {
|
||||||
|
background-color: #3f4a50;
|
||||||
|
}
|
||||||
|
.tablesorter-blackice tr.even td.secondary {
|
||||||
|
background-color: #4f5a60;
|
||||||
|
}
|
||||||
|
.tablesorter-blackice td.tertiary,
|
||||||
|
.tablesorter-blackice tr.odd td.tertiary {
|
||||||
|
background-color: #4f5a60;
|
||||||
|
}
|
||||||
|
.tablesorter-blackice tr.even td.tertiary {
|
||||||
|
background-color: #5a646b;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption */
|
||||||
|
caption {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-blackice .tablesorter-filter-row {
|
||||||
|
background-color: #222;
|
||||||
|
}
|
||||||
|
.tablesorter-blackice .tablesorter-filter-row td {
|
||||||
|
background-color: #222;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center; /* center the input */
|
||||||
|
-webkit-transition: line-height 0.1s ease;
|
||||||
|
-moz-transition: line-height 0.1s ease;
|
||||||
|
-o-transition: line-height 0.1s ease;
|
||||||
|
transition: line-height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* optional disabled input styling */
|
||||||
|
.tablesorter-blackice .tablesorter-filter-row .disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-blackice .tablesorter-filter-row.hideme td {
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
/*** change this padding to modify the thickness ***/
|
||||||
|
/*** of the closed filter row (height = padding x 2) ***/
|
||||||
|
padding: 2px;
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-blackice .tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
/* filters */
|
||||||
|
.tablesorter-blackice input.tablesorter-filter,
|
||||||
|
.tablesorter-blackice select.tablesorter-filter {
|
||||||
|
width: 98%;
|
||||||
|
height: auto;
|
||||||
|
margin: 0;
|
||||||
|
padding: 4px;
|
||||||
|
background-color: #fff;
|
||||||
|
border: 1px solid #bbb;
|
||||||
|
color: #333;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
-webkit-transition: height 0.1s ease;
|
||||||
|
-moz-transition: height 0.1s ease;
|
||||||
|
-o-transition: height 0.1s ease;
|
||||||
|
transition: height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.tablesorter .filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter .tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #e6bf99;
|
||||||
|
}
|
||||||
229
css/theme.blue.css
Normal file
@ -0,0 +1,229 @@
|
|||||||
|
/*************
|
||||||
|
Blue Theme
|
||||||
|
*************/
|
||||||
|
/* overall */
|
||||||
|
.tablesorter-blue {
|
||||||
|
width: 100%;
|
||||||
|
background-color: #fff;
|
||||||
|
margin: 10px 0 15px;
|
||||||
|
text-align: left;
|
||||||
|
border-spacing: 0;
|
||||||
|
border: #cdcdcd 1px solid;
|
||||||
|
border-width: 1px 0 0 1px;
|
||||||
|
}
|
||||||
|
.tablesorter-blue th,
|
||||||
|
.tablesorter-blue td {
|
||||||
|
border: #cdcdcd 1px solid;
|
||||||
|
border-width: 0 1px 1px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* header */
|
||||||
|
.tablesorter-blue th,
|
||||||
|
.tablesorter-blue thead td {
|
||||||
|
font: 12px/18px Arial, Sans-serif;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #000;
|
||||||
|
background-color: #99bfe6;
|
||||||
|
border-collapse: collapse;
|
||||||
|
padding: 4px;
|
||||||
|
text-shadow: 0 1px 0 rgba(204, 204, 204, 0.7);
|
||||||
|
}
|
||||||
|
.tablesorter-blue tbody td,
|
||||||
|
.tablesorter-blue tfoot th,
|
||||||
|
.tablesorter-blue tfoot td {
|
||||||
|
padding: 4px;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
.tablesorter-blue .header,
|
||||||
|
.tablesorter-blue .tablesorter-header {
|
||||||
|
/* black (unsorted) double arrow */
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAJAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==);
|
||||||
|
/* white (unsorted) double arrow */
|
||||||
|
/* background-image: url(data:image/gif;base64,R0lGODlhFQAJAIAAAP///////yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==); */
|
||||||
|
/* image */
|
||||||
|
/* background-image: url(images/black-unsorted.gif); */
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-position: center right;
|
||||||
|
padding: 4px 18px 4px 4px;
|
||||||
|
white-space: normal;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-blue .headerSortUp,
|
||||||
|
.tablesorter-blue .tablesorter-headerSortUp,
|
||||||
|
.tablesorter-blue .tablesorter-headerAsc {
|
||||||
|
background-color: #9fbfdf;
|
||||||
|
/* black asc arrow */
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);
|
||||||
|
/* white asc arrow */
|
||||||
|
/* background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7); */
|
||||||
|
/* image */
|
||||||
|
/* background-image: url(images/black-asc.gif); */
|
||||||
|
}
|
||||||
|
.tablesorter-blue .headerSortDown,
|
||||||
|
.tablesorter-blue .tablesorter-headerSortDown,
|
||||||
|
.tablesorter-blue .tablesorter-headerDesc {
|
||||||
|
background-color: #8cb3d9;
|
||||||
|
/* black desc arrow */
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);
|
||||||
|
/* white desc arrow */
|
||||||
|
/* background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7); */
|
||||||
|
/* image */
|
||||||
|
/* background-image: url(images/black-desc.gif); */
|
||||||
|
}
|
||||||
|
.tablesorter-blue thead .sorter-false {
|
||||||
|
background-image: none;
|
||||||
|
cursor: default;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tfoot */
|
||||||
|
.tablesorter-blue tfoot .tablesorter-headerSortUp,
|
||||||
|
.tablesorter-blue tfoot .tablesorter-headerSortDown,
|
||||||
|
.tablesorter-blue tfoot .tablesorter-headerAsc,
|
||||||
|
.tablesorter-blue tfoot .tablesorter-headerDesc {
|
||||||
|
/* remove sort arrows from footer */
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tbody */
|
||||||
|
.tablesorter-blue td {
|
||||||
|
color: #3d3d3d;
|
||||||
|
background-color: #fff;
|
||||||
|
padding: 4px;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered row colors
|
||||||
|
you'll need to add additional lines for
|
||||||
|
rows with more than 2 child rows
|
||||||
|
*/
|
||||||
|
.tablesorter-blue tbody > tr.hover > td,
|
||||||
|
.tablesorter-blue tbody > tr:hover > td,
|
||||||
|
.tablesorter-blue tbody > tr:hover + tr.tablesorter-childRow > td,
|
||||||
|
.tablesorter-blue tbody > tr:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td,
|
||||||
|
.tablesorter-blue tbody > tr.even.hover > td,
|
||||||
|
.tablesorter-blue tbody > tr.even:hover > td,
|
||||||
|
.tablesorter-blue tbody > tr.even:hover + tr.tablesorter-childRow > td,
|
||||||
|
.tablesorter-blue tbody > tr.even:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
|
||||||
|
background-color: #d9d9d9;
|
||||||
|
}
|
||||||
|
.tablesorter-blue tbody > tr.odd.hover > td,
|
||||||
|
.tablesorter-blue tbody > tr.odd:hover > td,
|
||||||
|
.tablesorter-blue tbody > tr.odd:hover + tr.tablesorter-childRow > td,
|
||||||
|
.tablesorter-blue tbody > tr.odd:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
|
||||||
|
background-color: #bfbfbf;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* table processing indicator */
|
||||||
|
.tablesorter-blue .tablesorter-processing {
|
||||||
|
background-position: center center !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
/* background-image: url(images/loading.gif) !important; */
|
||||||
|
background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zebra Widget - row alternating colors */
|
||||||
|
.tablesorter-blue tbody tr.odd > td {
|
||||||
|
background-color: #ebf2fa;
|
||||||
|
}
|
||||||
|
.tablesorter-blue tbody tr.even > td {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Column Widget - column sort colors */
|
||||||
|
.tablesorter-blue td.primary,
|
||||||
|
.tablesorter-blue tr.odd td.primary {
|
||||||
|
background-color: #99b3e6;
|
||||||
|
}
|
||||||
|
.tablesorter-blue tr.even td.primary {
|
||||||
|
background-color: #c2d1f0;
|
||||||
|
}
|
||||||
|
.tablesorter-blue td.secondary,
|
||||||
|
.tablesorter-blue tr.odd td.secondary {
|
||||||
|
background-color: #c2d1f0;
|
||||||
|
}
|
||||||
|
.tablesorter-blue tr.even td.secondary {
|
||||||
|
background-color: #d6e0f5;
|
||||||
|
}
|
||||||
|
.tablesorter-blue td.tertiary,
|
||||||
|
.tablesorter-blue tr.odd td.tertiary {
|
||||||
|
background-color: #d6e0f5;
|
||||||
|
}
|
||||||
|
.tablesorter-blue tr.even td.tertiary {
|
||||||
|
background-color: #ebf0fa;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption */
|
||||||
|
caption {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-blue .tablesorter-filter-row {
|
||||||
|
background-color: #eee;
|
||||||
|
}
|
||||||
|
.tablesorter-blue .tablesorter-filter-row td {
|
||||||
|
background-color: #eee;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center; /* center the input */
|
||||||
|
-webkit-transition: line-height 0.1s ease;
|
||||||
|
-moz-transition: line-height 0.1s ease;
|
||||||
|
-o-transition: line-height 0.1s ease;
|
||||||
|
transition: line-height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* optional disabled input styling */
|
||||||
|
.tablesorter-blue .tablesorter-filter-row .disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-blue .tablesorter-filter-row.hideme td {
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
/*** change this padding to modify the thickness ***/
|
||||||
|
/*** of the closed filter row (height = padding x 2) ***/
|
||||||
|
padding: 2px;
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-blue .tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
/* filters */
|
||||||
|
.tablesorter-blue input.tablesorter-filter,
|
||||||
|
.tablesorter-blue select.tablesorter-filter {
|
||||||
|
width: 98%;
|
||||||
|
height: auto;
|
||||||
|
margin: 0;
|
||||||
|
padding: 4px;
|
||||||
|
background-color: #fff;
|
||||||
|
border: 1px solid #bbb;
|
||||||
|
color: #333;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
-webkit-transition: height 0.1s ease;
|
||||||
|
-moz-transition: height 0.1s ease;
|
||||||
|
-o-transition: height 0.1s ease;
|
||||||
|
transition: height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.tablesorter .filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter .tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #e6bf99;
|
||||||
|
}
|
||||||
158
css/theme.bootstrap.css
Normal file
@ -0,0 +1,158 @@
|
|||||||
|
/*************
|
||||||
|
Bootstrap theme
|
||||||
|
*************/
|
||||||
|
/* jQuery Bootstrap Theme */
|
||||||
|
.tablesorter-bootstrap {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap thead th,
|
||||||
|
.tablesorter-bootstrap thead td,
|
||||||
|
.tablesorter-bootstrap tfoot th,
|
||||||
|
.tablesorter-bootstrap tfoot td {
|
||||||
|
font: 14px/20px Arial, Sans-serif;
|
||||||
|
font-weight: bold;
|
||||||
|
padding: 4px;
|
||||||
|
margin: 0 0 18px;
|
||||||
|
background-color: #eee;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-bootstrap .tablesorter-header {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-bootstrap .tablesorter-header-inner {
|
||||||
|
position: relative;
|
||||||
|
padding: 4px 18px 4px 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* bootstrap uses <i> for icons */
|
||||||
|
.tablesorter-bootstrap .tablesorter-header i.tablesorter-icon {
|
||||||
|
font-size: 11px;
|
||||||
|
position: absolute;
|
||||||
|
right: 2px;
|
||||||
|
top: 50%;
|
||||||
|
margin-top: -7px; /* half the icon height; older IE doesn't like this */
|
||||||
|
width: 14px;
|
||||||
|
height: 14px;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
line-height: 14px;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* black unsorted icon */
|
||||||
|
.tablesorter-bootstrap .bootstrap-icon-unsorted {
|
||||||
|
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAOCAMAAADOvxanAAAAVFBMVEUAAABCQkJZWVkZGRnJyckgICAZGRkZGRn8/PweHh4dHR0aGhoaGhpUVFQbGxvQ0NDc3NxMTExSUlIbGxvr6+s4ODhKSkogICAtLS00NDQzMzMnJydSEPrQAAAAGHRSTlMA1ssZRLgdAQbDyisqsZo8QdXUq0r9xPepSRwiAAAAX0lEQVQI13XHSQKAIAwEwQAKxn13Ev7/T2Pu9qmarJKPXIicI4PH4hxaKNrhm2S8bJK5h4YzKHrzJNtK6yYT/TdXzpS5zuYg4MSQYF6i4IHExdw1UVRi05HPrrvT53a+qyMFC9t04gcAAAAASUVORK5CYII=);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* white unsorted icon */
|
||||||
|
.tablesorter-bootstrap .icon-white.bootstrap-icon-unsorted {
|
||||||
|
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAOBAMAAAALT/umAAAAKlBMVEUAAAD///////////////////////////////////////////////////+Gu8ovAAAADXRSTlMA4EXKBtQqvR0+sxmalc142gAAAFdJREFUCNdjYGDoamAAAjZbMxCVfvd6AgMDd+3du9UMDKx3hWSvMjBwXZww8RYDGuC53NB8h4GB8a617UUGBs7Yu3cjGRhYVO9eVQFKOskKOQApFmUgBwBZ+xXRTttNdAAAAABJRU5ErkJggg==);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* since bootstrap (table-striped) uses nth-child(), we just use this to add a zebra stripe color */
|
||||||
|
.tablesorter-bootstrap > tbody > tr.odd > td,
|
||||||
|
.tablesorter-bootstrap > tbody > tr.tablesorter-hasChildRow.odd:hover ~ tr.tablesorter-hasChildRow.odd ~ .tablesorter-childRow.odd > td {
|
||||||
|
background-color: #f9f9f9;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap > tbody > tr.hover > td,
|
||||||
|
.tablesorter-bootstrap > tbody > tr.odd:hover > td,
|
||||||
|
.tablesorter-bootstrap > tbody > tr.even:hover > td,
|
||||||
|
.tablesorter-bootstrap > tbody > tr.tablesorter-hasChildRow.odd:hover ~ .tablesorter-childRow.odd > td,
|
||||||
|
.tablesorter-bootstrap > tbody > tr.tablesorter-hasChildRow.even:hover ~ .tablesorter-childRow.even > td {
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap > tbody > tr.even > td,
|
||||||
|
.tablesorter-bootstrap > tbody > tr.tablesorter-hasChildRow.even:hover ~ tr.tablesorter-hasChildRow.even ~ .tablesorter-childRow.even > td {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* processing icon */
|
||||||
|
.tablesorter-bootstrap .tablesorter-processing {
|
||||||
|
background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=');
|
||||||
|
background-position: center center !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption */
|
||||||
|
.caption {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-bootstrap .tablesorter-filter-row input.tablesorter-filter,
|
||||||
|
.tablesorter-bootstrap .tablesorter-filter-row select.tablesorter-filter {
|
||||||
|
width: 98%;
|
||||||
|
margin: 0;
|
||||||
|
padding: 4px 6px;
|
||||||
|
color: #333;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
-webkit-transition: height 0.1s ease;
|
||||||
|
-moz-transition: height 0.1s ease;
|
||||||
|
-o-transition: height 0.1s ease;
|
||||||
|
transition: height 0.1s ease;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap .tablesorter-filter-row .tablesorter-filter.disabled {
|
||||||
|
background-color: #eee;
|
||||||
|
color: #555;
|
||||||
|
cursor: not-allowed;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
border-radius: 4px;
|
||||||
|
box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.075) inset;
|
||||||
|
box-sizing: border-box;
|
||||||
|
transition: height 0.1s ease;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap .tablesorter-filter-row {
|
||||||
|
background-color: #efefef;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap .tablesorter-filter-row td {
|
||||||
|
background-color: #efefef;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center;
|
||||||
|
padding: 4px 6px;
|
||||||
|
vertical-align: middle;
|
||||||
|
-webkit-transition: line-height 0.1s ease;
|
||||||
|
-moz-transition: line-height 0.1s ease;
|
||||||
|
-o-transition: line-height 0.1s ease;
|
||||||
|
transition: line-height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-bootstrap .tablesorter-filter-row.hideme td {
|
||||||
|
padding: 2px; /* change this to modify the thickness of the closed border row */
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap .tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.tablesorter .filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* pager plugin */
|
||||||
|
.tablesorter-bootstrap .tablesorter-pager select {
|
||||||
|
padding: 4px 6px;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap .tablesorter-pager .pagedisplay {
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
/* tfoot i for pager controls */
|
||||||
|
.tablesorter-bootstrap tfoot i {
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter .tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #e6bf99;
|
||||||
|
}
|
||||||
157
css/theme.bootstrap_2.css
Normal file
@ -0,0 +1,157 @@
|
|||||||
|
/*************
|
||||||
|
Bootstrap 2 Theme
|
||||||
|
*************/
|
||||||
|
/* jQuery Bootstrap 2 Theme */
|
||||||
|
.tablesorter-bootstrap {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap .tablesorter-header,
|
||||||
|
.tablesorter-bootstrap tfoot th,
|
||||||
|
.tablesorter-bootstrap tfoot td {
|
||||||
|
font: 14px/20px Arial, Sans-serif;
|
||||||
|
font-weight: bold;
|
||||||
|
position: relative;
|
||||||
|
padding: 8px;
|
||||||
|
margin: 0 0 18px;
|
||||||
|
list-style: none;
|
||||||
|
background-color: #FBFBFB;
|
||||||
|
background-image: -moz-linear-gradient(top, white, #efefef);
|
||||||
|
background-image: -ms-linear-gradient(top, white, #efefef);
|
||||||
|
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(white), to(#efefef));
|
||||||
|
background-image: -webkit-linear-gradient(top, white, #efefef);
|
||||||
|
background-image: -o-linear-gradient(top, white, #efefef);
|
||||||
|
background-image: linear-gradient(to bottom, white, #efefef);
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#efefef', GradientType=0);
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
-webkit-box-shadow: inset 0 1px 0 white;
|
||||||
|
-moz-box-shadow: inset 0 1px 0 #ffffff;
|
||||||
|
box-shadow: inset 0 1px 0 white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-bootstrap .tablesorter-header {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-bootstrap .tablesorter-header-inner {
|
||||||
|
position: relative;
|
||||||
|
padding: 4px 18px 4px 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* bootstrap uses <i> for icons */
|
||||||
|
.tablesorter-bootstrap .tablesorter-header i.tablesorter-icon {
|
||||||
|
position: absolute;
|
||||||
|
right: 2px;
|
||||||
|
top: 50%;
|
||||||
|
margin-top: -7px; /* half the icon height; older IE doesn't like this */
|
||||||
|
width: 14px;
|
||||||
|
height: 14px;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
line-height: 14px;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* black unsorted icon */
|
||||||
|
.tablesorter-bootstrap .bootstrap-icon-unsorted {
|
||||||
|
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAOCAYAAAD5YeaVAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAWVJREFUeNqUUL9Lw2AUTGP8mqGlpBQkNeCSRcckEBcHq1jImMElToKuDvpHFMGhU0BQcHBwLji6CE1B4uB/INQsDi4d2jQ/fPeZxo764OV6915f7lLJ81xot9tCURXqdVEUr7IsO6ffH9Q5BlEUCaLwWxWqTcbYnaIoh0Dw4gAvcWlxq1qt9hqNxg6hUGAP+uIPUrGs0qXLer2+v/pTX6QpxLtkc2U2m53ACb8sSdIDXerSEms2m6+DweAICA4d89KGbduf9MpEVdXQ9/2LVqv1CASHjjn3iq/x1xKFfxQPqGnada1W86bT6SiO42OS3qk3KPStLMvbk8nkfjwen/LLuq6blFymMB0KdUPSGhAcOualjX6/f0bCiC7NaWGPQr0BwaFjzn0gYJqmLAiCA8/zni3LmhuGkQPBoWPOPwQeaPIqD4fDruu6L6Zp5kBw6IudchmdJAkLw3DXcZwnIPjy/FuAAQCiqqWWCAFKcwAAAABJRU5ErkJggg==);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* white unsorted icon */
|
||||||
|
.tablesorter-bootstrap .icon-white.bootstrap-icon-unsorted {
|
||||||
|
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAOBAMAAAALT/umAAAAKlBMVEUAAAD///////////////////////////////////////////////////+Gu8ovAAAADXRSTlMA4EXKBtQqvR0+sxmalc142gAAAFdJREFUCNdjYGDoamAAAjZbMxCVfvd6AgMDd+3du9UMDKx3hWSvMjBwXZww8RYDGuC53NB8h4GB8a617UUGBs7Yu3cjGRhYVO9eVQFKOskKOQApFmUgBwBZ+xXRTttNdAAAAABJRU5ErkJggg==);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* since bootstrap (table-striped) uses nth-child(), we just use this to add a zebra stripe color */
|
||||||
|
.tablesorter-bootstrap tr.odd > td {
|
||||||
|
background-color: #f9f9f9;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap tbody > tr.hover > td,
|
||||||
|
.tablesorter-bootstrap tbody > .odd:hover > td,
|
||||||
|
.tablesorter-bootstrap tbody > .even:hover > td {
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap tbody > tr.even > td {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* processing icon */
|
||||||
|
.tablesorter-bootstrap .tablesorter-processing {
|
||||||
|
background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=');
|
||||||
|
position: absolute;
|
||||||
|
z-index: 1000;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption */
|
||||||
|
caption {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-bootstrap .tablesorter-filter-row input.tablesorter-filter,
|
||||||
|
.tablesorter-bootstrap .tablesorter-filter-row select.tablesorter-filter {
|
||||||
|
height: 28px;
|
||||||
|
width: 98%;
|
||||||
|
margin: 0;
|
||||||
|
padding: 4px 6px;
|
||||||
|
background-color: #fff;
|
||||||
|
color: #333;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
-webkit-transition: height 0.1s ease;
|
||||||
|
-moz-transition: height 0.1s ease;
|
||||||
|
-o-transition: height 0.1s ease;
|
||||||
|
transition: height 0.1s ease;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap .tablesorter-filter-row .tablesorter-filter.disabled {
|
||||||
|
background-color: #eee;
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap .tablesorter-filter-row {
|
||||||
|
background-color: #ddd;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap .tablesorter-filter-row td {
|
||||||
|
background-color: #eee;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center;
|
||||||
|
padding: 4px 6px;
|
||||||
|
vertical-align: middle;
|
||||||
|
-webkit-transition: line-height 0.1s ease;
|
||||||
|
-moz-transition: line-height 0.1s ease;
|
||||||
|
-o-transition: line-height 0.1s ease;
|
||||||
|
transition: line-height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-bootstrap tr.tablesorter-filter-row.hideme td {
|
||||||
|
padding: 2px; /* change this to modify the thickness of the closed border row */
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap tr.tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.tablesorter .filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* pager plugin */
|
||||||
|
.tablesorter-bootstrap .tablesorter-pager select {
|
||||||
|
padding: 4px 6px;
|
||||||
|
}
|
||||||
|
.tablesorter-bootstrap .tablesorter-pager .pagedisplay {
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter .tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #e6bf99;
|
||||||
|
}
|
||||||
193
css/theme.dark.css
Normal file
@ -0,0 +1,193 @@
|
|||||||
|
/*************
|
||||||
|
Dark Theme (by thezoggy)
|
||||||
|
*************/
|
||||||
|
/* overall */
|
||||||
|
.tablesorter-dark {
|
||||||
|
width: 100%;
|
||||||
|
font: 11px/18px Arial, Sans-serif;
|
||||||
|
color: #ccc;
|
||||||
|
text-align: left;
|
||||||
|
background-color: #000;
|
||||||
|
border-spacing: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* header */
|
||||||
|
.tablesorter-dark th,
|
||||||
|
.tablesorter-dark thead td {
|
||||||
|
padding: 4px;
|
||||||
|
font: 12px/20px Arial, Sans-serif;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #fff;
|
||||||
|
background-color: #000;
|
||||||
|
border-collapse: collapse;
|
||||||
|
}
|
||||||
|
.tablesorter-dark thead th {
|
||||||
|
border-bottom: #333 2px solid;
|
||||||
|
}
|
||||||
|
.tablesorter-dark .header,
|
||||||
|
.tablesorter-dark .tablesorter-header {
|
||||||
|
padding: 4px 20px 4px 4px;
|
||||||
|
cursor: pointer;
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAJAIAAAP///////yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==);
|
||||||
|
background-position: center right;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
}
|
||||||
|
.tablesorter-dark thead .headerSortUp,
|
||||||
|
.tablesorter-dark thead .tablesorter-headerSortUp,
|
||||||
|
.tablesorter-dark thead .tablesorter-headerAsc {
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);
|
||||||
|
border-bottom: #888 1px solid;
|
||||||
|
}
|
||||||
|
.tablesorter-dark thead .headerSortDown,
|
||||||
|
.tablesorter-dark thead .tablesorter-headerSortDown,
|
||||||
|
.tablesorter-dark thead .tablesorter-headerDesc {
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);
|
||||||
|
border-bottom: #888 1px solid;
|
||||||
|
}
|
||||||
|
.tablesorter-dark thead .sorter-false {
|
||||||
|
background-image: none;
|
||||||
|
cursor: default;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tfoot */
|
||||||
|
.tablesorter-dark tfoot .tablesorter-headerSortUp,
|
||||||
|
.tablesorter-dark tfoot .tablesorter-headerSortDown,
|
||||||
|
.tablesorter-dark tfoot .tablesorter-headerAsc,
|
||||||
|
.tablesorter-dark tfoot .tablesorter-headerDesc {
|
||||||
|
border-top: #888 1px solid;
|
||||||
|
/* remove sort arrows from footer */
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tbody */
|
||||||
|
.tablesorter-dark td {
|
||||||
|
padding: 4px;
|
||||||
|
background-color: #000;
|
||||||
|
border-bottom: #333 1px solid;
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered row colors */
|
||||||
|
.tablesorter-dark tbody > tr.hover > td,
|
||||||
|
.tablesorter-dark tbody > tr:hover > td,
|
||||||
|
.tablesorter-dark tbody > tr.even:hover > td,
|
||||||
|
.tablesorter-dark tbody > tr.odd:hover > td {
|
||||||
|
background-color: #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* table processing indicator */
|
||||||
|
.tablesorter-dark .tablesorter-processing {
|
||||||
|
background-position: center center !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
/* background-image: url(images/loading.gif) !important; */
|
||||||
|
background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zebra Widget - row alternating colors */
|
||||||
|
.tablesorter-dark tr.odd > td {
|
||||||
|
background-color: #202020;
|
||||||
|
}
|
||||||
|
.tablesorter-dark tr.even > td {
|
||||||
|
background-color: #101010;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Column Widget - column sort colors */
|
||||||
|
.tablesorter-dark td.primary,
|
||||||
|
.tablesorter-dark tr.odd td.primary {
|
||||||
|
background-color: #0a0a0a;
|
||||||
|
}
|
||||||
|
.tablesorter-dark tr.even td.primary {
|
||||||
|
background-color: #050505;
|
||||||
|
}
|
||||||
|
.tablesorter-dark td.secondary,
|
||||||
|
.tablesorter-dark tr.odd td.secondary {
|
||||||
|
background-color: #0f0f0f;
|
||||||
|
}
|
||||||
|
.tablesorter-dark tr.even td.secondary {
|
||||||
|
background-color: #0a0a0a;
|
||||||
|
}
|
||||||
|
.tablesorter-dark td.tertiary,
|
||||||
|
.tablesorter-dark tr.odd td.tertiary {
|
||||||
|
background-color: #191919;
|
||||||
|
}
|
||||||
|
.tablesorter-dark tr.even td.tertiary {
|
||||||
|
background-color: #0f0f0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption */
|
||||||
|
caption {
|
||||||
|
background-color: #202020;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-dark .tablesorter-filter-row {
|
||||||
|
background-color: #202020;
|
||||||
|
}
|
||||||
|
.tablesorter-dark .tablesorter-filter-row td {
|
||||||
|
background-color: #202020;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center; /* center the input */
|
||||||
|
-webkit-transition: line-height 0.1s ease;
|
||||||
|
-moz-transition: line-height 0.1s ease;
|
||||||
|
-o-transition: line-height 0.1s ease;
|
||||||
|
transition: line-height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* optional disabled input styling */
|
||||||
|
.tablesorter-dark .tablesorter-filter-row .disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-dark .tablesorter-filter-row.hideme td {
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
/*** change this padding to modify the thickness ***/
|
||||||
|
/*** of the closed filter row (height = padding x 2) ***/
|
||||||
|
padding: 2px;
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-dark .tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filters */
|
||||||
|
.tablesorter-dark input.tablesorter-filter,
|
||||||
|
.tablesorter-dark select.tablesorter-filter {
|
||||||
|
width: 98%;
|
||||||
|
height: auto;
|
||||||
|
margin: 0;
|
||||||
|
padding: 4px;
|
||||||
|
background-color: #111;
|
||||||
|
border: 1px solid #222;
|
||||||
|
color: #ddd;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
-webkit-transition: height 0.1s ease;
|
||||||
|
-moz-transition: height 0.1s ease;
|
||||||
|
-o-transition: height 0.1s ease;
|
||||||
|
transition: height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.tablesorter .filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter .tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #e6bf99;
|
||||||
|
}
|
||||||
194
css/theme.default.css
Normal file
@ -0,0 +1,194 @@
|
|||||||
|
/*************
|
||||||
|
Default Theme
|
||||||
|
*************/
|
||||||
|
/* overall */
|
||||||
|
.tablesorter-default {
|
||||||
|
width: 100%;
|
||||||
|
font: 12px/18px Arial, Sans-serif;
|
||||||
|
color: #333;
|
||||||
|
background-color: #fff;
|
||||||
|
border-spacing: 0;
|
||||||
|
margin: 10px 0 15px;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* header */
|
||||||
|
.tablesorter-default th,
|
||||||
|
.tablesorter-default thead td {
|
||||||
|
font-weight: bold;
|
||||||
|
color: #000;
|
||||||
|
background-color: #fff;
|
||||||
|
border-collapse: collapse;
|
||||||
|
border-bottom: #ccc 2px solid;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.tablesorter-default tfoot th,
|
||||||
|
.tablesorter-default tfoot td {
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
.tablesorter-default .header,
|
||||||
|
.tablesorter-default .tablesorter-header {
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAJAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==);
|
||||||
|
background-position: center right;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
cursor: pointer;
|
||||||
|
white-space: normal;
|
||||||
|
padding: 4px 20px 4px 4px;
|
||||||
|
}
|
||||||
|
.tablesorter-default thead .headerSortUp,
|
||||||
|
.tablesorter-default thead .tablesorter-headerSortUp,
|
||||||
|
.tablesorter-default thead .tablesorter-headerAsc {
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);
|
||||||
|
border-bottom: #000 2px solid;
|
||||||
|
}
|
||||||
|
.tablesorter-default thead .headerSortDown,
|
||||||
|
.tablesorter-default thead .tablesorter-headerSortDown,
|
||||||
|
.tablesorter-default thead .tablesorter-headerDesc {
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);
|
||||||
|
border-bottom: #000 2px solid;
|
||||||
|
}
|
||||||
|
.tablesorter-default thead .sorter-false {
|
||||||
|
background-image: none;
|
||||||
|
cursor: default;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tfoot */
|
||||||
|
.tablesorter-default tfoot .tablesorter-headerSortUp,
|
||||||
|
.tablesorter-default tfoot .tablesorter-headerSortDown,
|
||||||
|
.tablesorter-default tfoot .tablesorter-headerAsc,
|
||||||
|
.tablesorter-default tfoot .tablesorter-headerDesc {
|
||||||
|
border-top: #000 2px solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tbody */
|
||||||
|
.tablesorter-default td {
|
||||||
|
background-color: #fff;
|
||||||
|
border-bottom: #ccc 1px solid;
|
||||||
|
padding: 4px;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered row colors */
|
||||||
|
.tablesorter-default tbody > tr.hover > td,
|
||||||
|
.tablesorter-default tbody > tr:hover > td,
|
||||||
|
.tablesorter-default tbody > tr.even:hover > td,
|
||||||
|
.tablesorter-default tbody > tr.odd:hover > td {
|
||||||
|
background-color: #fff;
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* table processing indicator */
|
||||||
|
.tablesorter-default .tablesorter-processing {
|
||||||
|
background-position: center center !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
/* background-image: url(images/loading.gif) !important; */
|
||||||
|
background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zebra Widget - row alternating colors */
|
||||||
|
.tablesorter-default tr.odd > td {
|
||||||
|
background-color: #dfdfdf;
|
||||||
|
}
|
||||||
|
.tablesorter-default tr.even > td {
|
||||||
|
background-color: #efefef;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Column Widget - column sort colors */
|
||||||
|
.tablesorter-default tr.odd td.primary {
|
||||||
|
background-color: #bfbfbf;
|
||||||
|
}
|
||||||
|
.tablesorter-default td.primary,
|
||||||
|
.tablesorter-default tr.even td.primary {
|
||||||
|
background-color: #d9d9d9;
|
||||||
|
}
|
||||||
|
.tablesorter-default tr.odd td.secondary {
|
||||||
|
background-color: #d9d9d9;
|
||||||
|
}
|
||||||
|
.tablesorter-default td.secondary,
|
||||||
|
.tablesorter-default tr.even td.secondary {
|
||||||
|
background-color: #e6e6e6;
|
||||||
|
}
|
||||||
|
.tablesorter-default tr.odd td.tertiary {
|
||||||
|
background-color: #e6e6e6;
|
||||||
|
}
|
||||||
|
.tablesorter-default td.tertiary,
|
||||||
|
.tablesorter-default tr.even td.tertiary {
|
||||||
|
background-color: #f2f2f2;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption */
|
||||||
|
caption {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-default .tablesorter-filter-row {
|
||||||
|
background-color: #eee;
|
||||||
|
}
|
||||||
|
.tablesorter-default .tablesorter-filter-row td {
|
||||||
|
background-color: #eee;
|
||||||
|
border-bottom: #ccc 1px solid;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center; /* center the input */
|
||||||
|
-webkit-transition: line-height 0.1s ease;
|
||||||
|
-moz-transition: line-height 0.1s ease;
|
||||||
|
-o-transition: line-height 0.1s ease;
|
||||||
|
transition: line-height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* optional disabled input styling */
|
||||||
|
.tablesorter-default .tablesorter-filter-row .disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-default .tablesorter-filter-row.hideme td {
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
/*** change this padding to modify the thickness ***/
|
||||||
|
/*** of the closed filter row (height = padding x 2) ***/
|
||||||
|
padding: 2px;
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-default .tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
/* filters */
|
||||||
|
.tablesorter-default input.tablesorter-filter,
|
||||||
|
.tablesorter-default select.tablesorter-filter {
|
||||||
|
width: 95%;
|
||||||
|
height: auto;
|
||||||
|
margin: 4px auto;
|
||||||
|
padding: 4px;
|
||||||
|
background-color: #fff;
|
||||||
|
border: 1px solid #bbb;
|
||||||
|
color: #333;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
-webkit-transition: height 0.1s ease;
|
||||||
|
-moz-transition: height 0.1s ease;
|
||||||
|
-o-transition: height 0.1s ease;
|
||||||
|
transition: height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.tablesorter .filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter .tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #e6bf99;
|
||||||
|
}
|
||||||
216
css/theme.dropbox.css
Normal file
@ -0,0 +1,216 @@
|
|||||||
|
/*************
|
||||||
|
Dropbox Theme (by thezoggy)
|
||||||
|
*************/
|
||||||
|
/* overall */
|
||||||
|
.tablesorter-dropbox {
|
||||||
|
width: 100%;
|
||||||
|
font: 13px/32px "Open Sans","lucida grande","Segoe UI",arial,verdana,"lucida sans unicode",tahoma,sans-serif;
|
||||||
|
color: #555;
|
||||||
|
text-align: left;
|
||||||
|
background-color: #fff;
|
||||||
|
border-collapse: collapse;
|
||||||
|
border-top: 1px solid #82cffa;
|
||||||
|
border-spacing: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* header */
|
||||||
|
.tablesorter-dropbox th,
|
||||||
|
.tablesorter-dropbox thead td,
|
||||||
|
.tablesorter-dropbox tfoot th,
|
||||||
|
.tablesorter-dropbox tfoot td {
|
||||||
|
background-color: #f0f9ff;
|
||||||
|
border-color: #82cffa #e7f2fb #96c4ea;
|
||||||
|
border-style: solid;
|
||||||
|
border-width: 1px;
|
||||||
|
padding: 3px 6px;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: normal;
|
||||||
|
line-height: 29px;
|
||||||
|
color: #2281CF;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox .header,
|
||||||
|
.tablesorter-dropbox thead tr,
|
||||||
|
.tablesorter-dropbox .tablesorter-headerRow {
|
||||||
|
background-color: #f0f9ff;
|
||||||
|
border-bottom: 1px solid #96c4ea;
|
||||||
|
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.12), 0 0 0 #000000 inset;
|
||||||
|
white-space: normal;
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox .tablesorter-headerSortUp,
|
||||||
|
.tablesorter-dropbox .tablesorter-headerSortDown,
|
||||||
|
.tablesorter-dropbox .tablesorter-headerAsc,
|
||||||
|
.tablesorter-dropbox .tablesorter-headerDesc {
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox .tablesorter-header {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox .tablesorter-header i.tablesorter-icon {
|
||||||
|
width: 9px;
|
||||||
|
height: 9px;
|
||||||
|
padding: 0 10px 0 4px;
|
||||||
|
display: inline-block;
|
||||||
|
background-position: center right;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
content: "";
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox .tablesorter-headerSortUp i.tablesorter-icon,
|
||||||
|
.tablesorter-dropbox .tablesorter-headerAsc i.tablesorter-icon {
|
||||||
|
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAALhJREFUeNpi/P//PwMhwILMiexYx8bIxNTy/9+/muUVQb9g4kzIitg4edI4+YRLQTSyOCPMupjerUI8whK3OXgEhH58+fDuy9sXqkuKvd+hmMTOxdvCxS8sxMUvxACiQXwU6+Im7DDg5BNKY+fiY2BmYWMA0SA+SByuiJ2bbzIHrwAzMxsb0AGMDCAaxAeJg+SZ7wtaqfAISfQAdTIwMUM8ywhUyMTEzPD/71+5FXvPLWUkJpwAAgwAZqYvvHStbD4AAAAASUVORK5CYII=');
|
||||||
|
/* background-image: url(images/dropbox-asc.png); */
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox .tablesorter-headerSortUp:hover i.tablesorter-icon,
|
||||||
|
.tablesorter-dropbox .tablesorter-headerAsc:hover i.tablesorter-icon {
|
||||||
|
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAALVJREFUeNpi/P//PwMhwILMCc+qZGNkYmr5/+9fzcpp7b9g4kzIitjYOdM4uXlLQTSyOCPMuqi8OiEefsHbHFzcQj++fX335eN71WWTmt6hmMTOwdXCycMnBDSJAUSD+CjWxRQ0GHBw86Sxc3AyMDOzMIBoEB8kDlfEzsk1mYOLByjPCnQAIwOIBvFB4iB55rsfmVS4+QV7QNYwMTNDHApUyMTExPDv/z+5Feu3L2UkJpwAAgwA244u+I9CleAAAAAASUVORK5CYII=');
|
||||||
|
/* background-image: url(images/dropbox-asc-hovered.png); */
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox .tablesorter-headerSortDown i.tablesorter-icon,
|
||||||
|
.tablesorter-dropbox .tablesorter-headerDesc i.tablesorter-icon {
|
||||||
|
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAALdJREFUeNpi/P//PwMhwBLdtVGFhZ3zNhMzC4bkv79/GP78/K7KCDIpZ9mVw+xcfDaMTExwBf///WP4+e3TkSlROrZg7UxMLLns3HxnmFnZmGGK/v7+9ff3j2+5YHkQMSlC48Kv719m/f//D2IKkAbxQeJwRSDw4/OHmr+/fr0DqmAA0SA+TA6uaEq0zjugG+r//vkFcks9iA/3HbJvvn18O+vf379yP758mMXAoAAXZyQmnAACDADX316BiTFbMQAAAABJRU5ErkJggg==');
|
||||||
|
/* background-image: url(images/dropbox-desc.png); */
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox .tablesorter-headerSortDown:hover i.tablesorter-icon,
|
||||||
|
.tablesorter-dropbox .tablesorter-headerDesc:hover i.tablesorter-icon {
|
||||||
|
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAALNJREFUeNpi/P//PwMhwBJf3uP879e3PUzMzBiS//7+ZWBi43JhBJmU2z7nIzMzEx8jIyNcAUj8799/nyZXpvCzgARYuXjTWBkZVjCzIEz7++cvw+//DGkgNiPMTWVT1l5hZvynDTINbMp/pqtdOcE6IDkmmM5fv3/5//v37z9QBQOIBvFhcnBFEwoj7/5jZFnz9+8fBhAN4sN9h+ybH9++JrGxscr/+vE1CVmckZhwAggwANvlUyq5Dd1wAAAAAElFTkSuQmCC');
|
||||||
|
/* background-image: url(images/dropbox-desc-hovered.png); */
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox thead .sorter-false {
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-dropbox thead .sorter-false i.tablesorter-icon,
|
||||||
|
.tablesorter-dropbox thead .sorter-false:hover i.tablesorter-icon {
|
||||||
|
background-image: none;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tbody */
|
||||||
|
.tablesorter-dropbox td {
|
||||||
|
padding: 5px 6px;
|
||||||
|
line-height: 32px;
|
||||||
|
color: #555;
|
||||||
|
text-align: left;
|
||||||
|
border-top: 1px solid #edf1f5;
|
||||||
|
border-bottom: 1px solid #edf1f5;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered row colors */
|
||||||
|
.tablesorter-dropbox tbody > tr.hover > td,
|
||||||
|
.tablesorter-dropbox tbody > tr:hover > td,
|
||||||
|
.tablesorter-dropbox tbody > tr.even:hover > td,
|
||||||
|
.tablesorter-dropbox tbody > tr.odd:hover > td {
|
||||||
|
background-color: rgba(230, 245, 255, 0.3);
|
||||||
|
border-right: 0;
|
||||||
|
border-left: 0;
|
||||||
|
border-color: #c6d8e4;
|
||||||
|
/* trick to do border-top and bottom colors */
|
||||||
|
border-style: double;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* table processing indicator */
|
||||||
|
.tablesorter-dropbox .tablesorter-processing {
|
||||||
|
background-position: center center !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
/* background-image: url(images/loading.gif) !important; */
|
||||||
|
background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zebra Widget - row alternating colors */
|
||||||
|
.tablesorter-dropbox tr.odd > td {
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox tr.even > td {
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Column Widget - column sort colors */
|
||||||
|
.tablesorter-dropbox td.primary,
|
||||||
|
.tablesorter-dropbox tr.odd td.primary {
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox tr.even td.primary {
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox td.secondary,
|
||||||
|
.tablesorter-dropbox tr.odd td.secondary {
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox tr.even td.secondary {
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox td.tertiary,
|
||||||
|
.tablesorter-dropbox tr.odd td.tertiary {
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox tr.even td.tertiary {
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption */
|
||||||
|
caption {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Filter Widget */
|
||||||
|
.tablesorter-dropbox .tablesorter-filter-row {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox .tablesorter-filter-row td {
|
||||||
|
background-color: #fff;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center; /* center the input */
|
||||||
|
-webkit-transition: line-height 0.1s ease;
|
||||||
|
-moz-transition: line-height 0.1s ease;
|
||||||
|
-o-transition: line-height 0.1s ease;
|
||||||
|
transition: line-height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* optional disabled input styling */
|
||||||
|
.tablesorter-dropbox .tablesorter-filter-row .disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-dropbox .tablesorter-filter-row.hideme td {
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
/*** change this padding to modify the thickness ***/
|
||||||
|
/*** of the closed filter row (height = padding x 2) ***/
|
||||||
|
padding: 2px;
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-dropbox .tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filters */
|
||||||
|
.tablesorter-dropbox input.tablesorter-filter,
|
||||||
|
.tablesorter-dropbox select.tablesorter-filter {
|
||||||
|
width: 98%;
|
||||||
|
height: auto;
|
||||||
|
margin: 0;
|
||||||
|
background-color: #fff;
|
||||||
|
border: 1px solid #bbb;
|
||||||
|
color: #333;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
-webkit-transition: height 0.1s ease;
|
||||||
|
-moz-transition: height 0.1s ease;
|
||||||
|
-o-transition: height 0.1s ease;
|
||||||
|
transition: height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.tablesorter .filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter .tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #e6bf99;
|
||||||
|
}
|
||||||
212
css/theme.green.css
Normal file
@ -0,0 +1,212 @@
|
|||||||
|
/*************
|
||||||
|
Green Theme
|
||||||
|
*************/
|
||||||
|
/* overall */
|
||||||
|
.tablesorter-green {
|
||||||
|
width: 100%;
|
||||||
|
text-align: left;
|
||||||
|
border-spacing: 0;
|
||||||
|
border: #cdcdcd 1px solid;
|
||||||
|
border-width: 1px 0 0 1px;
|
||||||
|
}
|
||||||
|
.tablesorter-green th,
|
||||||
|
.tablesorter-green td {
|
||||||
|
font: 12px/18px Arial, Sans-serif;
|
||||||
|
border: #cdcdcd 1px solid;
|
||||||
|
border-width: 0 1px 1px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* header */
|
||||||
|
.tablesorter-green thead tr .tablesorter-header,
|
||||||
|
.tablesorter-green tfoot tr {
|
||||||
|
background-position: center center;
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhAQBkAOYAAN/e39XU1fX19tTU1eXm5uTl5ePk5OLj4+Hi4vX29fT19PP08/Lz8vHy8fDx8O/w7+7v7uzt7Orr6ufo5/T08/Pz8ufn5uLi4eDg39/f3t3d3Nzc29HR0NDQz8/Pzuvq6urp6eno6Ojn5+fm5tfW1tbV1dTT09PS0tLR0dHQ0NDPz/f39/b29vX19fT09PPz8/Ly8vHx8e/v7+7u7u3t7ezs7Ovr6+rq6unp6ejo6Ofn5+bm5uXl5eTk5OPj4+Li4uHh4eDg4N/f397e3t3d3dzc3Nvb29ra2tnZ2djY2NfX19XV1dPT09LS0tHR0dDQ0M/Pz8rKysXFxf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAFMALAAAAAABAGQAAAdegCsrLC0tLi+ILi6FCSwsCS0KkhQVDA0OMjM0NTYfICEiIzw9P0AYGUQaG0ZHSEoDTU9Qs08pTk1MSyRJR0VDQT8+PTw7Ojg3NTMyMTAvi4WOhC0vMTI1OT9GTlFSgQA7);
|
||||||
|
/* background-image: url(images/green-header.gif); */
|
||||||
|
}
|
||||||
|
.tablesorter-green th,
|
||||||
|
.tablesorter-green thead td {
|
||||||
|
font-weight: bold;
|
||||||
|
border-right: #cdcdcd 1px solid;
|
||||||
|
border-collapse: collapse;
|
||||||
|
padding: 6px;
|
||||||
|
}
|
||||||
|
.tablesorter-green .header,
|
||||||
|
.tablesorter-green .tablesorter-header-inner {
|
||||||
|
background-position: 5px center;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhEAAQAOYAAA5NDBBYDlWWUzRUM5DVjp7inJ/fnQ1ECiCsGhyYFxqKFRFdDhBXDQxCCiO8HSK2HCCqGh2aGByUFxuPFhqNFhmHFRZ2EhVvERRpEBBVDSS8HiGyHB+mGh6fGRuTFxiAFBd5Eww/Cgs5CRp7Fiu+JRx8GCy/JjHAKyynKCuhJzXCMDbCMDnDMyNuHz3EODy9N0LFPSl7JkvIRjycOFDKS1LKTVPLT1XLUFTCT17OWTBkLmbQYnDTbHXVcXnWdoXago/djGmUZ112XCJEIEdjRf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAEUALAAAAAAQABAAAAdlgEWCg4SFhoIvh4cVLECKhCMeJjwFj0UlEwgaMD4Gii0WFAkRHQ47BIY6IQAZDAwBCyAPOJa1toRBGBAwNTY3OT0/AoZCDQoOKi4yNDOKRCIfGycrKZYDBxIkKLZDFxy3RTHgloEAOw==);
|
||||||
|
/* background-image: url(images/green-unsorted.gif); */
|
||||||
|
border-collapse: collapse;
|
||||||
|
white-space: normal;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-green thead .headerSortUp .tablesorter-header-inner,
|
||||||
|
.tablesorter-green thead .tablesorter-headerSortUp .tablesorter-header-inner,
|
||||||
|
.tablesorter-green thead .tablesorter-headerAsc .tablesorter-header-inner {
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhEAAQANUAAA5NDBBYDpDVjp7inJ/fnSCsGhyYFxFdDhBXDSO8HSK2HB2aGBuPFhqNFhmHFRZ2EhBVDSS8Hh6fGRuTFxd5Eww/Chp7Fhx8GCy/JjnDMyNuHzy9N0LFPVTCTzBkLmbQYnDTbHnWdo/djP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACMALAAAAAAQABAAAAY4wJFwSCwaj8ikcslMbpojR0bEtEwwoIHywihEOCECUvNoGBaSxEdg9FQAEAQicKAoOtC8fs8fBgEAOw==)
|
||||||
|
/* background-image: url(images/green-asc.gif); */
|
||||||
|
}
|
||||||
|
.tablesorter-green thead .headerSortDown .tablesorter-header-inner,
|
||||||
|
.tablesorter-green thead .tablesorter-headerSortDown .tablesorter-header-inner,
|
||||||
|
.tablesorter-green thead .tablesorter-headerDesc .tablesorter-header-inner {
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhEAAQANUAAFWWUzRUMw1EChqKFQxCCiO8HSCqGhyUFxVvERRpECGyHB+mGhiAFAs5CSu+JTHAKyynKCuhJzXCMDbCMD3EOELFPSl7JkvIRjycOFDKS1LKTVPLT1XLUF7OWXXVcYXagmmUZ112XCJEIEdjRf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACQALAAAAAAQABAAAAY4QJJwSCwaj8ikcskkghKGimbD6Xg+AGOIMChIKJcMBjlqMBSPSUQZEBwcEKYIsWiSLPa8fs9HBgEAOw==)
|
||||||
|
/* background-image: url(images/green-desc.gif); */
|
||||||
|
}
|
||||||
|
.tablesorter-green th.tablesorter-header .tablesorter-header-inner,
|
||||||
|
.tablesorter-green td.tablesorter-header .tablesorter-header-inner {
|
||||||
|
padding-left: 23px;
|
||||||
|
}
|
||||||
|
.tablesorter-green thead .tablesorter-header.sorter-false .tablesorter-header-inner {
|
||||||
|
background-image: none;
|
||||||
|
cursor: default;
|
||||||
|
padding-left: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tfoot */
|
||||||
|
.tablesorter-green tbody td,
|
||||||
|
.tablesorter-green tfoot th {
|
||||||
|
padding: 6px;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tbody */
|
||||||
|
.tablesorter-green td {
|
||||||
|
color: #3d3d3d;
|
||||||
|
padding: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered row colors
|
||||||
|
you'll need to add additional lines for
|
||||||
|
rows with more than 2 child rows
|
||||||
|
*/
|
||||||
|
.tablesorter-green tbody > tr.hover > td,
|
||||||
|
.tablesorter-green tbody > tr:hover > td,
|
||||||
|
.tablesorter-green tbody > tr:hover + tr.tablesorter-childRow > td,
|
||||||
|
.tablesorter-green tbody > tr:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td,
|
||||||
|
.tablesorter-green tbody > tr.even.hover > td,
|
||||||
|
.tablesorter-green tbody > tr.even:hover > td,
|
||||||
|
.tablesorter-green tbody > tr.even:hover + tr.tablesorter-childRow > td,
|
||||||
|
.tablesorter-green tbody > tr.even:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
|
||||||
|
background-color: #d9d9d9;
|
||||||
|
}
|
||||||
|
.tablesorter-green tbody > tr.odd.hover > td,
|
||||||
|
.tablesorter-green tbody > tr.odd:hover > td,
|
||||||
|
.tablesorter-green tbody > tr.odd:hover + tr.tablesorter-childRow > td,
|
||||||
|
.tablesorter-green tbody > tr.odd:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
|
||||||
|
background-color: #bfbfbf;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* table processing indicator */
|
||||||
|
.tablesorter-green .tablesorter-processing {
|
||||||
|
background-position: center center !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
/* background-image: url(images/loading.gif) !important; */
|
||||||
|
background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zebra Widget - row alternating colors */
|
||||||
|
.tablesorter-green tr.odd > td {
|
||||||
|
background-color: #ebfaeb;
|
||||||
|
}
|
||||||
|
.tablesorter-green tr.even > td {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Column Widget - column sort colors */
|
||||||
|
.tablesorter-green td.primary,
|
||||||
|
.tablesorter-green tr.odd td.primary {
|
||||||
|
background-color: #99e6a6;
|
||||||
|
}
|
||||||
|
.tablesorter-green tr.even td.primary {
|
||||||
|
background-color: #c2f0c9;
|
||||||
|
}
|
||||||
|
.tablesorter-green td.secondary,
|
||||||
|
.tablesorter-green tr.odd td.secondary {
|
||||||
|
background-color: #c2f0c9;
|
||||||
|
}
|
||||||
|
.tablesorter-green tr.even td.secondary {
|
||||||
|
background-color: #d6f5db;
|
||||||
|
}
|
||||||
|
.tablesorter-green td.tertiary,
|
||||||
|
.tablesorter-green tr.odd td.tertiary {
|
||||||
|
background-color: #d6f5db;
|
||||||
|
}
|
||||||
|
.tablesorter-green tr.even td.tertiary {
|
||||||
|
background-color: #ebfaed;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption */
|
||||||
|
caption {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-green .tablesorter-filter-row {
|
||||||
|
background-color: #eee;
|
||||||
|
}
|
||||||
|
.tablesorter-green .tablesorter-filter-row td {
|
||||||
|
background-color: #eee;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center; /* center the input */
|
||||||
|
-webkit-transition: line-height 0.1s ease;
|
||||||
|
-moz-transition: line-height 0.1s ease;
|
||||||
|
-o-transition: line-height 0.1s ease;
|
||||||
|
transition: line-height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* optional disabled input styling */
|
||||||
|
.tablesorter-green .tablesorter-filter-row .disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-green .tablesorter-filter-row.hideme td {
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
/*** change this padding to modify the thickness ***/
|
||||||
|
/*** of the closed filter row (height = padding x 2) ***/
|
||||||
|
padding: 2px;
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-green .tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
/* filters */
|
||||||
|
.tablesorter-green input.tablesorter-filter,
|
||||||
|
.tablesorter-green select.tablesorter-filter {
|
||||||
|
width: 98%;
|
||||||
|
height: auto;
|
||||||
|
margin: 0;
|
||||||
|
padding: 4px;
|
||||||
|
background-color: #fff;
|
||||||
|
border: 1px solid #bbb;
|
||||||
|
color: #333;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
-webkit-transition: height 0.1s ease;
|
||||||
|
-moz-transition: height 0.1s ease;
|
||||||
|
-o-transition: height 0.1s ease;
|
||||||
|
transition: height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.tablesorter .filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter .tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #e6bf99;
|
||||||
|
}
|
||||||
252
css/theme.grey.css
Normal file
@ -0,0 +1,252 @@
|
|||||||
|
/*************
|
||||||
|
Grey Theme
|
||||||
|
*************/
|
||||||
|
/* overall */
|
||||||
|
.tablesorter-grey {
|
||||||
|
width: 100%;
|
||||||
|
margin: 10px 0 15px;
|
||||||
|
text-align: left;
|
||||||
|
border-spacing: 0;
|
||||||
|
border-left: #555 1px solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* header */
|
||||||
|
.tablesorter-grey th,
|
||||||
|
.tablesorter-grey thead td {
|
||||||
|
font: bold 12px/18px Arial, Sans-serif;
|
||||||
|
color: #c8c8c8;
|
||||||
|
background-color: #3c3c3c;
|
||||||
|
background-image: -moz-linear-gradient(top, #555, #3c3c3c);
|
||||||
|
background-image: -ms-linear-gradient(top, #555, #3c3c3c);
|
||||||
|
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#555), to(#3c3c3c));
|
||||||
|
background-image: -webkit-linear-gradient(top, #555, #3c3c3c);
|
||||||
|
background-image: -o-linear-gradient(top, #555, #3c3c3c);
|
||||||
|
background-image: linear-gradient(to bottom, #555,#3c3c3c);
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#555555', endColorstr='#3c3c3c',GradientType=0 );
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
border-right: #555 1px solid;
|
||||||
|
text-shadow: 0 1px 0 rgba(128, 128, 128, 0.7);
|
||||||
|
-webkit-box-shadow: inset 0 1px 0 #222;
|
||||||
|
-moz-box-shadow: inset 0 1px 0 #222;
|
||||||
|
box-shadow: inset 0 1px 0 #222;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
.tablesorter-grey .tablesorter-header-inner,
|
||||||
|
.tablesorter-grey .tablesorter-header-inner {
|
||||||
|
position: relative;
|
||||||
|
padding: 4px 15px 4px 4px;
|
||||||
|
}
|
||||||
|
.tablesorter-grey .header,
|
||||||
|
.tablesorter-grey .tablesorter-header {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-grey .header i,
|
||||||
|
.tablesorter-grey .tablesorter-header i.tablesorter-icon {
|
||||||
|
width: 18px;
|
||||||
|
height: 10px;
|
||||||
|
position: absolute;
|
||||||
|
right: 2px;
|
||||||
|
top: 50%;
|
||||||
|
margin-top: -10px;
|
||||||
|
/* white (unsorted) double arrow */
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAJAIAAAP///////yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==);
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-position: center right;
|
||||||
|
padding: 4px;
|
||||||
|
white-space: normal;
|
||||||
|
}
|
||||||
|
.tablesorter-grey th.headerSortUp,
|
||||||
|
.tablesorter-grey th.tablesorter-headerSortUp,
|
||||||
|
.tablesorter-grey th.headerSortDown,
|
||||||
|
.tablesorter-grey th.tablesorter-headerSortDown {
|
||||||
|
color: #ddd;
|
||||||
|
background-color: #135185;
|
||||||
|
background-image: -moz-linear-gradient(top, #195c93, #0e4776);
|
||||||
|
background-image: -ms-linear-gradient(top, #195c93, #0e4776);
|
||||||
|
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#195c93), to(#0e4776));
|
||||||
|
background-image: -webkit-linear-gradient(top, #195c93, #0e4776);
|
||||||
|
background-image: -o-linear-gradient(top, #195c93, #0e4776);
|
||||||
|
background-image: linear-gradient(to bottom, #195c93, #0e4776);
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#195c93', endColorstr='#0e4776',GradientType=0 );
|
||||||
|
}
|
||||||
|
.tablesorter-grey .headerSortUp i.tablesorter-icon,
|
||||||
|
.tablesorter-grey .tablesorter-headerSortUp i.tablesorter-icon,
|
||||||
|
.tablesorter-grey .tablesorter-headerAsc i.tablesorter-icon {
|
||||||
|
/* white asc arrow */
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);
|
||||||
|
}
|
||||||
|
.tablesorter-grey .headerSortDown i.tablesorter-icon,
|
||||||
|
.tablesorter-grey .tablesorter-headerSortDown i.tablesorter-icon,
|
||||||
|
.tablesorter-grey .tablesorter-headerDesc i.tablesorter-icon {
|
||||||
|
/* white desc arrow */
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);
|
||||||
|
}
|
||||||
|
.tablesorter-grey thead .sorter-false {
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
.tablesorter-grey thead .sorter-false i.tablesorter-icon {
|
||||||
|
background-image: none;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tfoot */
|
||||||
|
.tablesorter-grey tbody td,
|
||||||
|
.tablesorter-grey tfoot th,
|
||||||
|
.tablesorter-grey tfoot td {
|
||||||
|
padding: 4px;
|
||||||
|
vertical-align: top;
|
||||||
|
border-right: #555 1px solid;
|
||||||
|
}
|
||||||
|
.tablesorter-grey tfoot th,
|
||||||
|
.tablesorter-grey tfoot td {
|
||||||
|
padding: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tbody */
|
||||||
|
.tablesorter-grey td {
|
||||||
|
color: #eee;
|
||||||
|
background-color: #6d6d6d;
|
||||||
|
padding: 4px;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered row colors
|
||||||
|
you'll need to add additional lines for
|
||||||
|
rows with more than 2 child rows
|
||||||
|
*/
|
||||||
|
.tablesorter-grey tbody > tr.hover > td,
|
||||||
|
.tablesorter-grey tbody > tr:hover > td,
|
||||||
|
.tablesorter-grey tbody > tr:hover + tr.tablesorter-childRow > td,
|
||||||
|
.tablesorter-grey tbody > tr:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td,
|
||||||
|
.tablesorter-grey tbody > tr.even.hover > td,
|
||||||
|
.tablesorter-grey tbody > tr.even:hover > td,
|
||||||
|
.tablesorter-grey tbody > tr.even:hover + tr.tablesorter-childRow > td,
|
||||||
|
.tablesorter-grey tbody > tr.even:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
|
||||||
|
background-color: #134b78;
|
||||||
|
}
|
||||||
|
.tablesorter-grey tbody > tr.odd.hover > td,
|
||||||
|
.tablesorter-grey tbody > tr.odd:hover > td,
|
||||||
|
.tablesorter-grey tbody > tr.odd:hover + tr.tablesorter-childRow > td,
|
||||||
|
.tablesorter-grey tbody > tr.odd:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
|
||||||
|
background-color: #134b78;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* table processing indicator */
|
||||||
|
.tablesorter-grey .tablesorter-processing {
|
||||||
|
background-position: center center !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
/* background-image: url(images/loading.gif) !important; */
|
||||||
|
background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zebra Widget - row alternating colors */
|
||||||
|
.tablesorter-grey tbody tr.odd > td {
|
||||||
|
background-color: #5e5e5e;
|
||||||
|
}
|
||||||
|
.tablesorter-grey tbody tr.even > td {
|
||||||
|
background-color: #6d6d6d;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Column Widget - column sort colors */
|
||||||
|
.tablesorter-grey td.primary,
|
||||||
|
.tablesorter-grey tr.odd td.primary {
|
||||||
|
color: #ddd;
|
||||||
|
background-color: #165388;
|
||||||
|
}
|
||||||
|
.tablesorter-grey tr.even td.primary {
|
||||||
|
color: #ddd;
|
||||||
|
background-color: #195c93;
|
||||||
|
}
|
||||||
|
.tablesorter-grey td.secondary,
|
||||||
|
.tablesorter-grey tr.odd td.secondary {
|
||||||
|
color: #ddd;
|
||||||
|
background-color: #185C9A;
|
||||||
|
}
|
||||||
|
.tablesorter-grey tr.even td.secondary {
|
||||||
|
color: #ddd;
|
||||||
|
background-color: #1D67A5;
|
||||||
|
}
|
||||||
|
.tablesorter-grey td.tertiary,
|
||||||
|
.tablesorter-grey tr.odd td.tertiary {
|
||||||
|
color: #ddd;
|
||||||
|
background-color: #1B67AD;
|
||||||
|
}
|
||||||
|
.tablesorter-grey tr.even td.tertiary {
|
||||||
|
color: #ddd;
|
||||||
|
background-color: #2073B7;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption */
|
||||||
|
caption {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-grey .tablesorter-filter-row {
|
||||||
|
background-color: #3c3c3c;
|
||||||
|
}
|
||||||
|
.tablesorter-grey .tablesorter-filter-row td {
|
||||||
|
background-color: #3c3c3c;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center; /* center the input */
|
||||||
|
-webkit-transition: line-height 0.1s ease;
|
||||||
|
-moz-transition: line-height 0.1s ease;
|
||||||
|
-o-transition: line-height 0.1s ease;
|
||||||
|
transition: line-height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* optional disabled input styling */
|
||||||
|
.tablesorter-grey .tablesorter-filter-row .disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-grey .tablesorter-filter-row.hideme td {
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
/*** change this padding to modify the thickness ***/
|
||||||
|
/*** of the closed filter row (height = padding x 2) ***/
|
||||||
|
padding: 2px;
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-grey .tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
/* filters */
|
||||||
|
.tablesorter-grey input.tablesorter-filter,
|
||||||
|
.tablesorter-grey select.tablesorter-filter {
|
||||||
|
width: 98%;
|
||||||
|
height: auto;
|
||||||
|
margin: 0;
|
||||||
|
padding: 4px;
|
||||||
|
background-color: #6d6d6d;
|
||||||
|
border: 1px solid #555;
|
||||||
|
color: #ddd;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
-webkit-transition: height 0.1s ease;
|
||||||
|
-moz-transition: height 0.1s ease;
|
||||||
|
-o-transition: height 0.1s ease;
|
||||||
|
transition: height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.tablesorter .filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter .tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #e6bf99;
|
||||||
|
}
|
||||||
212
css/theme.ice.css
Normal file
@ -0,0 +1,212 @@
|
|||||||
|
/*************
|
||||||
|
Ice Theme (by thezoggy)
|
||||||
|
*************/
|
||||||
|
/* overall */
|
||||||
|
.tablesorter-ice {
|
||||||
|
width: 100%;
|
||||||
|
background-color: #fff;
|
||||||
|
margin: 10px 0 15px;
|
||||||
|
text-align: left;
|
||||||
|
border-spacing: 0;
|
||||||
|
border: #ccc 1px solid;
|
||||||
|
border-width: 1px 0 0 1px;
|
||||||
|
}
|
||||||
|
.tablesorter-ice th,
|
||||||
|
.tablesorter-ice td {
|
||||||
|
border: #ccc 1px solid;
|
||||||
|
border-width: 0 1px 1px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* header */
|
||||||
|
.tablesorter-ice th,
|
||||||
|
.tablesorter-ice thead td {
|
||||||
|
font: 12px/18px Arial, Sans-serif;
|
||||||
|
color: #555;
|
||||||
|
background-color: #f6f8f9;
|
||||||
|
border-collapse: collapse;
|
||||||
|
padding: 4px;
|
||||||
|
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7);
|
||||||
|
}
|
||||||
|
.tablesorter-ice tbody td,
|
||||||
|
.tablesorter-ice tfoot th,
|
||||||
|
.tablesorter-ice tfoot td {
|
||||||
|
padding: 4px;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
.tablesorter-ice .header,
|
||||||
|
.tablesorter-ice .tablesorter-header {
|
||||||
|
background-color: #f6f8f9;
|
||||||
|
background-position: center right;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhDAAMAMQAAAJEjAJCiwJBigJAiANFjgNGjgNEjQRIkQRHkANIkAVMlAVQmAZWnQZUnAdYoAhdpAhZoAlhqQlepQliqQppsApmrQxutgtutQtutAxwtwxwtg1yug1zugxtsw1yuP8A/yH5BAEAAB8ALAAAAAAMAAwAAAUx4Cd+3GiOW4ado2d9VMVm1xg9ptadTsP+QNZEcjoQTBDGCAFgLRSfQgCYMAiCn8EvBAA7);
|
||||||
|
/* background-image: url(images/ice-unsorted.gif) */
|
||||||
|
padding: 4px 20px 4px 4px;
|
||||||
|
white-space: normal;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-ice .headerSortUp,
|
||||||
|
.tablesorter-ice .tablesorter-headerSortUp,
|
||||||
|
.tablesorter-ice .tablesorter-headerAsc {
|
||||||
|
color: #333;
|
||||||
|
background-color: #ebedee;
|
||||||
|
background-position: center right;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhDAAMANUAAAJCiwNHkANFjgNEjQRIkQNJkQRMlARKkwRKkgVPlwZSmgdaogdYnwhfpghcowlhqgliqglgqAlgpwljqwporwpmrQplrAtsswtqsgtrsgtqsQxttAtvtQtttAxyuQxwtwxxtwxvtg10uw1zuQ1xuP8A/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACUALAAAAAAMAAwAAAY6wJKwJBoahyNQ6Dj0fDoZCpPEuWgqk4jxs8FQLI+Gg8Esm5kQydFQMC7IwkOAqUiUCAIzIjA4lwBlQQA7);
|
||||||
|
/* background-image: url(images/ice-desc.gif) */
|
||||||
|
}
|
||||||
|
.tablesorter-ice .headerSortDown,
|
||||||
|
.tablesorter-ice .tablesorter-headerSortDown,
|
||||||
|
.tablesorter-ice .tablesorter-headerDesc {
|
||||||
|
color: #333;
|
||||||
|
background-color: #ebedee;
|
||||||
|
background-position: center right;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhDAAMANUAAAE/iAJBigNFjgNEjQNFjQNDiwRHkQRHjwNHjwROlgRMlQRMlARJkgRKkgZQmAVPlgZWnQZSmgZRmAdXoAdXnwdUnAdbogdZoQhbowlhqAlepglkrAliqQtstAtqsQxyugxyuQxwuAxxuAxxtwxwtgxvtQ10vA12vA10u/8A/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACkALAAAAAAMAAwAAAY6wJQwdRoah6bP6DhEiVIdDxNEGm4yxlDpiJkwv2AmR2OhVCSJBsJ4gUQeCwOB6VAwBAXwYRAIpwBfQQA7);
|
||||||
|
/* background-image: url(images/ice-asc.gif); */
|
||||||
|
}
|
||||||
|
.tablesorter-ice thead .sorter-false {
|
||||||
|
background-image: none;
|
||||||
|
cursor: default;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tfoot */
|
||||||
|
.tablesorter-ice tfoot .tablesorter-headerSortUp,
|
||||||
|
.tablesorter-ice tfoot .tablesorter-headerSortDown,
|
||||||
|
.tablesorter-ice tfoot .tablesorter-headerAsc,
|
||||||
|
.tablesorter-ice tfoot .tablesorter-headerDesc {
|
||||||
|
background-color: #ebedee;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tbody */
|
||||||
|
.tablesorter-ice td {
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered row colors */
|
||||||
|
.tablesorter-ice tbody > tr.hover > td,
|
||||||
|
.tablesorter-ice tbody > tr:hover > td,
|
||||||
|
.tablesorter-ice tbody > tr.even:hover > td,
|
||||||
|
.tablesorter-ice tbody > tr.odd:hover > td {
|
||||||
|
background-color: #ebf2fa;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* table processing indicator */
|
||||||
|
.tablesorter-ice .tablesorter-processing {
|
||||||
|
background-position: center center !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
/* background-image: url(images/loading.gif) !important; */
|
||||||
|
background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zebra Widget - row alternating colors */
|
||||||
|
.tablesorter-ice tr.odd > td {
|
||||||
|
background-color: #dfdfdf;
|
||||||
|
}
|
||||||
|
.tablesorter-ice tr.even > td {
|
||||||
|
background-color: #efefef;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Column Widget - column sort colors */
|
||||||
|
.tablesorter-ice td.primary,
|
||||||
|
.tablesorter-ice tr.odd td.primary {
|
||||||
|
background-color: #9ae5e5;
|
||||||
|
}
|
||||||
|
.tablesorter-ice tr.even td.primary {
|
||||||
|
background-color: #c2f0f0;
|
||||||
|
}
|
||||||
|
.tablesorter-ice td.secondary,
|
||||||
|
.tablesorter-ice tr.odd td.secondary {
|
||||||
|
background-color: #c2f0f0;
|
||||||
|
}
|
||||||
|
.tablesorter-ice tr.even td.secondary {
|
||||||
|
background-color: #d5f5f5;
|
||||||
|
}
|
||||||
|
.tablesorter-ice td.tertiary,
|
||||||
|
.tablesorter-ice tr.odd td.tertiary {
|
||||||
|
background-color: #d5f5f5;
|
||||||
|
}
|
||||||
|
.tablesorter-ice tr.even td.tertiary {
|
||||||
|
background-color: #ebfafa;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* sticky headers */
|
||||||
|
.tablesorter-ice.containsStickyHeaders thead tr:nth-child(1) th,
|
||||||
|
.tablesorter-ice.containsStickyHeaders thead tr:nth-child(1) td {
|
||||||
|
border-top: #ccc 1px solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption */
|
||||||
|
caption {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-ice .tablesorter-filter-row {
|
||||||
|
background-color: #eee;
|
||||||
|
}
|
||||||
|
.tablesorter-ice .tablesorter-filter-row td {
|
||||||
|
background-color: #eee;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center; /* center the input */
|
||||||
|
-webkit-transition: line-height 0.1s ease;
|
||||||
|
-moz-transition: line-height 0.1s ease;
|
||||||
|
-o-transition: line-height 0.1s ease;
|
||||||
|
transition: line-height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* optional disabled input styling */
|
||||||
|
.tablesorter-ice .tablesorter-filter-row .disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-ice .tablesorter-filter-row.hideme td {
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
/*** change this padding to modify the thickness ***/
|
||||||
|
/*** of the closed filter row (height = padding x 2) ***/
|
||||||
|
padding: 2px;
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-ice .tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
/* filters */
|
||||||
|
.tablesorter-ice input.tablesorter-filter,
|
||||||
|
.tablesorter-ice select.tablesorter-filter {
|
||||||
|
width: 98%;
|
||||||
|
height: auto;
|
||||||
|
margin: 0;
|
||||||
|
padding: 4px;
|
||||||
|
background-color: #fff;
|
||||||
|
border: 1px solid #bbb;
|
||||||
|
color: #333;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
-webkit-transition: height 0.1s ease;
|
||||||
|
-moz-transition: height 0.1s ease;
|
||||||
|
-o-transition: height 0.1s ease;
|
||||||
|
transition: height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.tablesorter .filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter .tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #e6bf99;
|
||||||
|
}
|
||||||
164
css/theme.jui.css
Normal file
@ -0,0 +1,164 @@
|
|||||||
|
/*************
|
||||||
|
jQuery UI Theme
|
||||||
|
*************/
|
||||||
|
/* overall */
|
||||||
|
.tablesorter-jui {
|
||||||
|
width: 100%;
|
||||||
|
border-collapse: separate;
|
||||||
|
border-spacing: 2px; /* adjust spacing between table cells */
|
||||||
|
margin: 10px 0 15px;
|
||||||
|
padding: 5px;
|
||||||
|
font-size: 0.8em;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* header */
|
||||||
|
.tablesorter-jui thead th,
|
||||||
|
.tablesorter-jui thead td,
|
||||||
|
.tablesorter-jui tfoot th,
|
||||||
|
.tablesorter-jui tfoot td {
|
||||||
|
position: relative;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-position: right center;
|
||||||
|
/* UI hover and active states make the font normal and the table resizes, this fixes it */
|
||||||
|
font-weight: bold !important;
|
||||||
|
border-width: 1px !important;
|
||||||
|
text-align: left;
|
||||||
|
padding: 8px; /* wider than the icon */
|
||||||
|
}
|
||||||
|
.tablesorter-jui .header,
|
||||||
|
.tablesorter-jui .tablesorter-header {
|
||||||
|
cursor: pointer;
|
||||||
|
white-space: normal;
|
||||||
|
}
|
||||||
|
.tablesorter-jui .tablesorter-header-inner {
|
||||||
|
padding-right: 20px;
|
||||||
|
}
|
||||||
|
.tablesorter-jui thead tr th .ui-icon {
|
||||||
|
position: absolute;
|
||||||
|
right: 3px;
|
||||||
|
top: 50%;
|
||||||
|
margin-top: -8px; /* half the icon height; older IE doesn't like this */
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-jui thead .sorter-false {
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
.tablesorter-jui thead tr .sorter-false .ui-icon {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tfoot */
|
||||||
|
.tablesorter-jui tfoot th,
|
||||||
|
.tablesorter-jui tfoot td {
|
||||||
|
font-weight: normal !important;
|
||||||
|
font-size: .9em;
|
||||||
|
padding: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tbody */
|
||||||
|
.tablesorter-jui td {
|
||||||
|
padding: 4px;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered row colors */
|
||||||
|
.tablesorter-jui tbody > tr.hover > td,
|
||||||
|
.tablesorter-jui tbody > tr:hover > td {
|
||||||
|
opacity: 0.7;
|
||||||
|
filter: alpha(opacity=70);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* table processing indicator */
|
||||||
|
.tablesorter-jui .tablesorter-processing .tablesorter-header-inner {
|
||||||
|
background-position: center center !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
/* background-image: url(images/loading.gif) !important; */
|
||||||
|
background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zebra widget - This allows you to use ui-state-default as the zebra stripe color */
|
||||||
|
.tablesorter-jui tr.ui-state-default {
|
||||||
|
background-image: none;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* processing background color */
|
||||||
|
.tablesorter-jui .tablesorter-processing {
|
||||||
|
background-color: #ddd; /* older browsers that don't support rgba */
|
||||||
|
background-color: rgba(255,255,255,0.8);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption */
|
||||||
|
.tablesorter-jui caption {
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-jui .tablesorter-filter-row {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
.tablesorter-jui .tablesorter-filter-row td {
|
||||||
|
background-color: transparent;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center; /* center the input */
|
||||||
|
-webkit-transition: line-height 0.1s ease;
|
||||||
|
-moz-transition: line-height 0.1s ease;
|
||||||
|
-o-transition: line-height 0.1s ease;
|
||||||
|
transition: line-height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* optional disabled input styling */
|
||||||
|
.tablesorter-jui .tablesorter-filter-row .disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-jui .tablesorter-filter-row.hideme td {
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
/*** change this padding to modify the thickness ***/
|
||||||
|
/*** of the closed filter row (height = padding x 2) ***/
|
||||||
|
padding: 2px;
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-jui .tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
/* filters */
|
||||||
|
.tablesorter-jui input.tablesorter-filter,
|
||||||
|
.tablesorter-jui select.tablesorter-filter {
|
||||||
|
width: 98%;
|
||||||
|
height: auto;
|
||||||
|
margin: 0;
|
||||||
|
padding: 4px;
|
||||||
|
background-color: #fff;
|
||||||
|
border: 1px solid #bbb;
|
||||||
|
color: #333;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
-webkit-transition: height 0.1s ease;
|
||||||
|
-moz-transition: height 0.1s ease;
|
||||||
|
-o-transition: height 0.1s ease;
|
||||||
|
transition: height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.tablesorter .filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter .tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #e6bf99;
|
||||||
|
}
|
||||||
329
css/theme.less
Normal file
@ -0,0 +1,329 @@
|
|||||||
|
/* Tablesorter Custom LESS Theme by Rob Garrison
|
||||||
|
|
||||||
|
To create your own theme, modify the code below and run it through
|
||||||
|
a LESS compiler, like this one: http://leafo.net/lessphp/editor.html
|
||||||
|
or download less.js from http://lesscss.org/
|
||||||
|
|
||||||
|
Test out these custom less files live
|
||||||
|
Basic Theme : http://codepen.io/Mottie/pen/eqBbn
|
||||||
|
Bootstrap : http://codepen.io/Mottie/pen/Ltzpi
|
||||||
|
Metro Style : http://codepen.io/Mottie/pen/gCslk
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*** theme ***/
|
||||||
|
@theme : tablesorter-custom;
|
||||||
|
|
||||||
|
/*** fonts ***/
|
||||||
|
@tableHeaderFont : 11px 'trebuchet ms', verdana, arial;
|
||||||
|
@tableBodyFont : 11px 'trebuchet ms', verdana, arial;
|
||||||
|
|
||||||
|
/*** color definitions ***/
|
||||||
|
/* for best results, only change the hue (120),
|
||||||
|
leave the saturation (60%) and luminosity (75%) alone
|
||||||
|
pick the color from here: http://hslpicker.com/#99E699 */
|
||||||
|
@headerBackground : hsl(120, 60%, 75%);
|
||||||
|
@borderAndBackground : #cdcdcd;
|
||||||
|
@overallBorder : @borderAndBackground 1px solid;
|
||||||
|
@headerTextColor : #000;
|
||||||
|
|
||||||
|
@bodyBackground : #fff;
|
||||||
|
@bodyTextColor : #000;
|
||||||
|
|
||||||
|
@headerAsc : darken(spin(@headerBackground, 5), 10%); /* darken(@headerBackground, 10%); */
|
||||||
|
@headerDesc : lighten(spin(@headerBackground, -5), 10%); /* desaturate(@headerAsc, 5%); */
|
||||||
|
|
||||||
|
@captionBackground : #fff; /* it might be best to match the document body background color here */
|
||||||
|
@errorBackground : #e6bf99; /* ajax error message (added to thead) */
|
||||||
|
|
||||||
|
@filterCellBackground : #eee;
|
||||||
|
@filterElementTextColor: #333;
|
||||||
|
@filterElementBkgd : #fff;
|
||||||
|
@filterElementBorder : 1px solid #bbb;
|
||||||
|
@filterTransitionTime : 0.1s;
|
||||||
|
@filterRowHiddenHeight : 4px; /* becomes height using padding (so it's divided by 2) */
|
||||||
|
|
||||||
|
@overallPadding : 4px;
|
||||||
|
/* 20px should be slightly wider than the icon width to avoid overlap */
|
||||||
|
@headerPadding : 4px 20px 4px 4px;
|
||||||
|
|
||||||
|
/* url(icons/loading.gif); */
|
||||||
|
@processingIcon : url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=');
|
||||||
|
|
||||||
|
/* zebra striping */
|
||||||
|
.allRows {
|
||||||
|
background-color: @bodyBackground;
|
||||||
|
color: @bodyTextColor;
|
||||||
|
}
|
||||||
|
.evenRows {
|
||||||
|
background-color: lighten(@headerBackground, 40%);
|
||||||
|
color: @bodyTextColor;
|
||||||
|
}
|
||||||
|
.oddRows {
|
||||||
|
background-color: lighten(@headerBackground, 20%);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered rows */
|
||||||
|
.oddHovered {
|
||||||
|
background-color: desaturate(@headerBackground, 60%);
|
||||||
|
color: @bodyTextColor;
|
||||||
|
}
|
||||||
|
.evenHovered {
|
||||||
|
background-color: lighten( desaturate(@headerBackground, 60%), 10% );
|
||||||
|
color: @bodyTextColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Columns widget */
|
||||||
|
@primaryOdd : spin(@headerBackground, 10); /* saturate( darken( desaturate(@headerBackground, 10%), 10% ), 30%); */
|
||||||
|
@primaryEven : lighten( @primaryOdd, 10% );
|
||||||
|
@secondaryOdd : @primaryEven;
|
||||||
|
@secondaryEven : lighten( @primaryEven, 5% );
|
||||||
|
@tertiaryOdd : @secondaryEven;
|
||||||
|
@tertiaryEven : lighten( @secondaryEven, 5% );
|
||||||
|
|
||||||
|
/* Filter widget transition */
|
||||||
|
.filterWidgetTransition {
|
||||||
|
-webkit-transition: line-height @filterTransitionTime ease;
|
||||||
|
-moz-transition: line-height @filterTransitionTime ease;
|
||||||
|
-o-transition: line-height @filterTransitionTime ease;
|
||||||
|
transition: line-height @filterTransitionTime ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*** Arrows ***/
|
||||||
|
@arrowPosition : right 5px center;
|
||||||
|
|
||||||
|
/* black */
|
||||||
|
@unsortedBlack : url(data:image/gif;base64,R0lGODlhFQAJAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==);
|
||||||
|
@sortAscBlack : url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);
|
||||||
|
@sortDescBlack : url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);
|
||||||
|
|
||||||
|
/* white */
|
||||||
|
@unsortedWhite : url(data:image/gif;base64,R0lGODlhFQAJAIAAAP///////yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==);
|
||||||
|
@sortAscWhite : url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);
|
||||||
|
@sortDescWhite : url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);
|
||||||
|
|
||||||
|
/* automatically choose the correct arrow/text color */
|
||||||
|
.headerText (@a) when (lightness(@a) >= 50%) {
|
||||||
|
color: @headerTextColor;
|
||||||
|
}
|
||||||
|
.headerText (@a) when (lightness(@a) < 50%) {
|
||||||
|
color: lighten(@headerTextColor, 90%);
|
||||||
|
}
|
||||||
|
.unsorted (@a) when (lightness(@a) >= 50%) {
|
||||||
|
background-image: @unsortedBlack;
|
||||||
|
}
|
||||||
|
.unsorted (@a) when (lightness(@a) < 50%) {
|
||||||
|
background-image: @unsortedWhite;
|
||||||
|
}
|
||||||
|
.sortAsc (@a) when (lightness(@a) >= 50%) {
|
||||||
|
background-image: @sortAscBlack;
|
||||||
|
}
|
||||||
|
.sortAsc (@a) when (lightness(@a) < 50%) {
|
||||||
|
background-image: @sortAscWhite;
|
||||||
|
}
|
||||||
|
.sortDesc (@a) when (lightness(@a) >= 50%) {
|
||||||
|
background-image: @sortDescBlack;
|
||||||
|
}
|
||||||
|
.sortDesc (@a) when (lightness(@a) < 50%) {
|
||||||
|
background-image: @sortDescWhite;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* variable theme name - requires less.js 1.3+;
|
||||||
|
or just replace (!".@{theme}") with the contents of @theme
|
||||||
|
*/
|
||||||
|
.@{theme} {
|
||||||
|
font: @tableBodyFont;
|
||||||
|
background-color: @borderAndBackground;
|
||||||
|
margin: 10px 0 15px;
|
||||||
|
width: 100%;
|
||||||
|
text-align: left;
|
||||||
|
border-spacing: 0;
|
||||||
|
border: @overallBorder;
|
||||||
|
border-width: 1px 0 0 1px;
|
||||||
|
|
||||||
|
th, td {
|
||||||
|
border: @overallBorder;
|
||||||
|
border-width: 0 1px 1px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* style th's outside of the thead */
|
||||||
|
th, thead td {
|
||||||
|
font: @tableHeaderFont;
|
||||||
|
font-weight: bold;
|
||||||
|
background-color: @headerBackground;
|
||||||
|
.headerText(@headerBackground);
|
||||||
|
border-collapse: collapse;
|
||||||
|
padding: @overallPadding;
|
||||||
|
}
|
||||||
|
|
||||||
|
tbody td, tfoot th, tfoot td {
|
||||||
|
padding: @overallPadding;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* style header */
|
||||||
|
.tablesorter-header {
|
||||||
|
.unsorted(@headerBackground);
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-position: @arrowPosition;
|
||||||
|
padding: @headerPadding;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-header.sorter-false {
|
||||||
|
background-image: none;
|
||||||
|
cursor: default;
|
||||||
|
padding: @overallPadding;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-headerAsc {
|
||||||
|
background-color: @headerAsc;
|
||||||
|
.sortAsc(@headerBackground);
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-headerDesc {
|
||||||
|
background-color: @headerDesc;
|
||||||
|
.sortDesc(@headerBackground);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tfoot */
|
||||||
|
tfoot .tablesorter-headerAsc,
|
||||||
|
tfoot .tablesorter-headerDesc {
|
||||||
|
/* remove sort arrows from footer */
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* optional disabled input styling */
|
||||||
|
.disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* body */
|
||||||
|
tbody {
|
||||||
|
|
||||||
|
td {
|
||||||
|
.allRows;
|
||||||
|
padding: @overallPadding;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zebra Widget - row alternating colors */
|
||||||
|
tr.odd > td {
|
||||||
|
.oddRows;
|
||||||
|
}
|
||||||
|
tr.even > td {
|
||||||
|
.evenRows;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered row colors
|
||||||
|
you'll need to add additional lines for
|
||||||
|
rows with more than 2 child rows
|
||||||
|
*/
|
||||||
|
tbody > tr.hover td,
|
||||||
|
tbody > tr:hover td,
|
||||||
|
tbody > tr:hover + tr.tablesorter-childRow > td,
|
||||||
|
tbody > tr:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td,
|
||||||
|
tbody > tr.even.hover > td,
|
||||||
|
tbody > tr.even:hover > td,
|
||||||
|
tbody > tr.even:hover + tr.tablesorter-childRow > td,
|
||||||
|
tbody > tr.even:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
|
||||||
|
.evenHovered;
|
||||||
|
}
|
||||||
|
tbody > tr.odd.hover > td,
|
||||||
|
tbody > tr.odd:hover > td,
|
||||||
|
tbody > tr.odd:hover + tr.tablesorter-childRow > td,
|
||||||
|
tbody > tr.odd:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td {
|
||||||
|
.oddHovered;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* table processing indicator - indeterminate spinner */
|
||||||
|
.tablesorter-processing {
|
||||||
|
background-image: @processingIcon;
|
||||||
|
background-position: center center;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Column Widget - column sort colors */
|
||||||
|
tr.odd td.primary {
|
||||||
|
background-color: @primaryOdd;
|
||||||
|
}
|
||||||
|
td.primary, tr.even td.primary {
|
||||||
|
background-color: @primaryEven;
|
||||||
|
}
|
||||||
|
tr.odd td.secondary {
|
||||||
|
background-color: @secondaryOdd;
|
||||||
|
}
|
||||||
|
td.secondary, tr.even td.secondary {
|
||||||
|
background-color: @secondaryEven;
|
||||||
|
}
|
||||||
|
tr.odd td.tertiary {
|
||||||
|
background-color: @tertiaryOdd;
|
||||||
|
}
|
||||||
|
td.tertiary, tr.even td.tertiary {
|
||||||
|
background-color: @tertiaryEven;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* caption (non-theme matching) */
|
||||||
|
caption {
|
||||||
|
background-color: @captionBackground ;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-filter-row input,
|
||||||
|
.tablesorter-filter-row select {
|
||||||
|
width: 98%;
|
||||||
|
height: auto;
|
||||||
|
margin: 0;
|
||||||
|
padding: @overallPadding;
|
||||||
|
color: @filterElementTextColor;
|
||||||
|
background-color: @filterElementBkgd;
|
||||||
|
border: @filterElementBorder;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
.filterWidgetTransition;
|
||||||
|
}
|
||||||
|
.tablesorter-filter-row {
|
||||||
|
background-color: @filterCellBackground;
|
||||||
|
}
|
||||||
|
.tablesorter-filter-row td {
|
||||||
|
text-align: center;
|
||||||
|
background-color: @filterCellBackground;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center; /* center the input */
|
||||||
|
.filterWidgetTransition;
|
||||||
|
}
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-filter-row.hideme td {
|
||||||
|
padding: @filterRowHiddenHeight / 2;
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: @errorBackground;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
197
css/theme.metro-dark.css
Normal file
@ -0,0 +1,197 @@
|
|||||||
|
/*************
|
||||||
|
Metro Dark Theme
|
||||||
|
*************/
|
||||||
|
/* overall */
|
||||||
|
.tablesorter-metro-dark {
|
||||||
|
width: 100%;
|
||||||
|
font: 12px/18px 'Segoe UI Semilight', 'Open Sans', Verdana, Arial, Helvetica, sans-serif;
|
||||||
|
color: #000;
|
||||||
|
background-color: #333;
|
||||||
|
border-spacing: 0;
|
||||||
|
margin: 10px 0 15px;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-metro-dark tr.dark-row th, .tablesorter-metro-dark tr.dark-row td, .tablesorter-metro-dark caption.dark-row {
|
||||||
|
background-color: #222;
|
||||||
|
color: #fff;
|
||||||
|
padding: 2px;
|
||||||
|
text-align: left;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* header/footer */
|
||||||
|
.tablesorter-metro-dark caption,
|
||||||
|
.tablesorter-metro-dark th,
|
||||||
|
.tablesorter-metro-dark thead td,
|
||||||
|
.tablesorter-metro-dark tfoot th,
|
||||||
|
.tablesorter-metro-dark tfoot td {
|
||||||
|
font-weight: 300;
|
||||||
|
font-size: 15px;
|
||||||
|
color: #ddd;
|
||||||
|
background-color: #333;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tablesorter-metro-dark .header,
|
||||||
|
.tablesorter-metro-dark .tablesorter-header {
|
||||||
|
background-image: url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQBAMAAADQT4M0AAAAGFBMVEUAAADu7u7u7u7u7u7u7u7u7u7u7u7u7u5jNePWAAAACHRSTlMAMxIHKwEgMWD59H4AAABSSURBVAjXY2BgYFJgAAHzYhDJ6igSAKTYBAUTgJSioKAQAwNzoaCguAFDiCAQuDIkgigxBgiA8cJAVCpQt6AgSL+JoKAzA0gjUBsQqBcBCYhFAAE/CV4zeSzxAAAAAElFTkSuQmCC);
|
||||||
|
background-position: right 5px center;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
cursor: pointer;
|
||||||
|
white-space: normal;
|
||||||
|
}
|
||||||
|
.tablesorter-metro-dark .tablesorter-header-inner {
|
||||||
|
padding: 0 18px 0 4px;
|
||||||
|
}
|
||||||
|
.tablesorter-metro-dark thead .headerSortUp,
|
||||||
|
.tablesorter-metro-dark thead .tablesorter-headerSortUp,
|
||||||
|
.tablesorter-metro-dark thead .tablesorter-headerAsc {
|
||||||
|
background-image: url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQBAMAAADQT4M0AAAAIVBMVEUAAADu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u5meJAOAAAACnRSTlMAMwsqXt+gIBUGxGoDMAAAAFlJREFUCNctzC0SQAAUReEzGNQ3AlHRiSRZFCVZYgeswRL8hLdK7834wj3tAlGP6y7fYHpKS6w6WwbVG0I1NZVnZPG8/DYxOYlnhUYkA06R1s9ESsxR4NIdPhkPFDFYuEnMAAAAAElFTkSuQmCC);
|
||||||
|
}
|
||||||
|
.tablesorter-metro-dark thead .headerSortDown,
|
||||||
|
.tablesorter-metro-dark thead .tablesorter-headerSortDown,
|
||||||
|
.tablesorter-metro-dark thead .tablesorter-headerDesc {
|
||||||
|
background-image: url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQBAMAAADQT4M0AAAALVBMVEUAAADu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7i0NViAAAADnRSTlMAMiweCQITTvDctZZqaTlM310AAABcSURBVAjXY2BgYEtgAAFHERDJqigUAKSYBQUNgFSioKAYAwOLIBA4MASBKFUGQxAlzAAF+94BwWuGKBC1lIFl3rt3Lx0YGCzevWsGSjK9e6cAUlT3HKyW9wADAwDRrBiDy6bKzwAAAABJRU5ErkJggg==);
|
||||||
|
}
|
||||||
|
.tablesorter-metro-dark thead .sorter-false {
|
||||||
|
background-image: none;
|
||||||
|
cursor: default;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tbody */
|
||||||
|
.tablesorter-metro-dark td {
|
||||||
|
background-color: #fff;
|
||||||
|
padding: 4px;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hovered row colors */
|
||||||
|
.tablesorter-metro-dark tbody > tr.hover > td,
|
||||||
|
.tablesorter-metro-dark tbody > tr:hover > td,
|
||||||
|
.tablesorter-metro-dark tbody > tr.even:hover > td,
|
||||||
|
.tablesorter-metro-dark tbody > tr.odd:hover > td {
|
||||||
|
background-color: #bbb;
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* table processing indicator */
|
||||||
|
.tablesorter-metro-dark .tablesorter-processing {
|
||||||
|
background-position: center center !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
/* background-image: url(images/loading.gif) !important; */
|
||||||
|
background-image: url(data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* pager */
|
||||||
|
.tablesorter-metro-dark .tablesorter-pager button {
|
||||||
|
background-color: #444;
|
||||||
|
color: #eee;
|
||||||
|
border: #555 1px solid;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-metro-dark .tablesorter-pager button:hover {
|
||||||
|
background-color: #555;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Zebra Widget - row alternating colors */
|
||||||
|
.tablesorter-metro-dark tr.odd > td {
|
||||||
|
background-color: #eee;
|
||||||
|
}
|
||||||
|
.tablesorter-metro-dark tr.even > td {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Column Widget - column sort colors */
|
||||||
|
.tablesorter-metro-dark tr.odd td.primary {
|
||||||
|
background-color: #bfbfbf;
|
||||||
|
}
|
||||||
|
.tablesorter-metro-dark td.primary,
|
||||||
|
.tablesorter-metro-dark tr.even td.primary {
|
||||||
|
background-color: #d9d9d9;
|
||||||
|
}
|
||||||
|
.tablesorter-metro-dark tr.odd td.secondary {
|
||||||
|
background-color: #d9d9d9;
|
||||||
|
}
|
||||||
|
.tablesorter-metro-dark td.secondary,
|
||||||
|
.tablesorter-metro-dark tr.even td.secondary {
|
||||||
|
background-color: #e6e6e6;
|
||||||
|
}
|
||||||
|
.tablesorter-metro-dark tr.odd td.tertiary {
|
||||||
|
background-color: #e6e6e6;
|
||||||
|
}
|
||||||
|
.tablesorter-metro-dark td.tertiary,
|
||||||
|
.tablesorter-metro-dark tr.even td.tertiary {
|
||||||
|
background-color: #f2f2f2;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* filter widget */
|
||||||
|
.tablesorter-metro-dark .tablesorter-filter-row {
|
||||||
|
background-color: #eee;
|
||||||
|
}
|
||||||
|
.tablesorter-metro-dark .tablesorter-filter-row td {
|
||||||
|
background-color: #eee;
|
||||||
|
line-height: normal;
|
||||||
|
text-align: center; /* center the input */
|
||||||
|
-webkit-transition: line-height 0.1s ease;
|
||||||
|
-moz-transition: line-height 0.1s ease;
|
||||||
|
-o-transition: line-height 0.1s ease;
|
||||||
|
transition: line-height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* optional disabled input styling */
|
||||||
|
.tablesorter-metro-dark .tablesorter-filter-row .disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: alpha(opacity=50);
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
/* hidden filter row */
|
||||||
|
.tablesorter-metro-dark .tablesorter-filter-row.hideme td {
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
/*** change this padding to modify the thickness ***/
|
||||||
|
/*** of the closed filter row (height = padding x 2) ***/
|
||||||
|
padding: 2px;
|
||||||
|
/*** *********************************************** ***/
|
||||||
|
margin: 0;
|
||||||
|
line-height: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tablesorter-metro-dark .tablesorter-filter-row.hideme * {
|
||||||
|
height: 1px;
|
||||||
|
min-height: 0;
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
/* don't use visibility: hidden because it disables tabbing */
|
||||||
|
opacity: 0;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
/* filters */
|
||||||
|
.tablesorter-metro-dark input.tablesorter-filter,
|
||||||
|
.tablesorter-metro-dark select.tablesorter-filter {
|
||||||
|
width: 95%;
|
||||||
|
height: auto;
|
||||||
|
margin: 0;
|
||||||
|
padding: 4px;
|
||||||
|
background-color: #fff;
|
||||||
|
border: 1px solid #bbb;
|
||||||
|
color: #333;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
-webkit-transition: height 0.1s ease;
|
||||||
|
-moz-transition: height 0.1s ease;
|
||||||
|
-o-transition: height 0.1s ease;
|
||||||
|
transition: height 0.1s ease;
|
||||||
|
}
|
||||||
|
/* rows hidden by filtering (needed for child rows) */
|
||||||
|
.tablesorter .filtered {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ajax error row */
|
||||||
|
.tablesorter .tablesorter-errorRow td {
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #e6bf99;
|
||||||
|
}
|
||||||
1
dist/css/dragtable.mod.min.css
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.dragtable-sortable{list-style-type:none;margin:0;padding:0;-moz-user-select:none;z-index:10}.dragtable-sortable li{margin:0;padding:0;float:left;font-size:1em}.dragtable-sortable table{margin-top:0}.dragtable-sortable td,.dragtable-sortable th{border-left:0}.dragtable-sortable li:first-child td,.dragtable-sortable li:first-child th{border-left:1px solid #CCC}.ui-sortable-helper{opacity:.7;filter:alpha(opacity=70)}.ui-sortable-placeholder{-moz-box-shadow:4px 5px 4px rgba(0,0,0,.2)inset;-webkit-box-shadow:4px 5px 4px rgba(0,0,0,.2)inset;box-shadow:4px 5px 4px rgba(0,0,0,.2)inset;border-bottom:1px solid rgba(0,0,0,.2);border-top:1px solid rgba(0,0,0,.2);visibility:visible!important;background:#EFEFEF}.ui-sortable-placeholder *{opacity:0;visibility:hidden}.table-handle,.table-handle-disabled{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyIiBoZWlnaHQ9IjEzIj48cmVjdCBzdHlsZT0iZmlsbDojMzMzO2ZpbGwtb3BhY2l0eTouODsiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHg9IjEiIHk9IjIiLz4JPHJlY3Qgc3R5bGU9ImZpbGw6IzMzMztmaWxsLW9wYWNpdHk6Ljg7IiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4PSIxIiB5PSI0Ii8+CTxyZWN0IHN0eWxlPSJmaWxsOiMzMzM7ZmlsbC1vcGFjaXR5Oi44OyIgd2lkdGg9IjEiIGhlaWdodD0iMSIgeD0iMSIgeT0iNiIvPjxyZWN0IHN0eWxlPSJmaWxsOiMzMzM7ZmlsbC1vcGFjaXR5Oi44OyIgd2lkdGg9IjEiIGhlaWdodD0iMSIgeD0iMSIgeT0iOCIvPjxyZWN0IHN0eWxlPSJmaWxsOiMzMzM7ZmlsbC1vcGFjaXR5Oi44OyIgd2lkdGg9IjEiIGhlaWdodD0iMSIgeD0iMSIgeT0iMTAiLz48L3N2Zz4=);background-repeat:repeat-x;height:13px;margin:0 1px;cursor:move}.table-handle-disabled{opacity:0;cursor:not-allowed}.dragtable-sortable table{margin-bottom:0}
|
||||||
1
dist/css/filter.formatter.min.css
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.tablesorter .tablesorter-filter-row td{text-align:center;font-size:.9em;font-weight:400}.tablesorter .ui-slider,.tablesorter input.range{width:90%;margin:2px auto;font-size:.8em}.tablesorter .ui-slider{top:12px}.tablesorter .ui-slider .ui-slider-handle{width:.9em;height:.9em}.tablesorter .ui-datepicker{font-size:.8em}.tablesorter .ui-slider-horizontal{height:.5em}.tablesorter .value-popup:after{content:attr(data-value);position:absolute;bottom:14px;left:-7px;min-width:18px;height:12px;background-color:#444;background-image:-webkit-gradient(linear,left top,left bottom,from(#444),to(#999));background-image:-webkit-linear-gradient(top,#444,#999);background-image:-moz-linear-gradient(top,#444,#999);background-image:-o-linear-gradient(top,#444,#999);background-image:linear-gradient(to bottom,#444,#999);-webkit-border-radius:3px;border-radius:3px;-webkit-background-clip:padding-box;background-clip:padding-box;-webkit-box-shadow:0 0 4px 0 #777;box-shadow:0 0 4px 0 #777;border:1px solid #444;color:#fff;font:1em/1.1em Arial,Sans-Serif;padding:1px;text-align:center}.tablesorter .value-popup:before{content:"";position:absolute;width:0;height:0;border-top:8px solid #777;border-left:8px solid transparent;border-right:8px solid transparent;top:-8px;left:50%;margin-left:-8px;margin-top:-1px}.tablesorter .dateFrom,.tablesorter .dateTo{width:80px;margin:2px 5px}.tablesorter .button{width:14px;height:14px;background:#fcfff4;background:-webkit-linear-gradient(top,#fcfff4 0,#dfe5d7 40%,#b3bead 100%);background:-moz-linear-gradient(top,#fcfff4 0,#dfe5d7 40%,#b3bead 100%);background:-o-linear-gradient(top,#fcfff4 0,#dfe5d7 40%,#b3bead 100%);background:-ms-linear-gradient(top,#fcfff4 0,#dfe5d7 40%,#b3bead 100%);background:linear-gradient(top,#fcfff4 0,#dfe5d7 40%,#b3bead 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#fcfff4', endColorstr='#b3bead', GradientType=0 );margin:1px 5px 1px 1px;-webkit-border-radius:25px;-moz-border-radius:25px;border-radius:25px;-webkit-box-shadow:inset 0 1px 1px #fff,0 1px 3px rgba(0,0,0,.5);-moz-box-shadow:inset 0 1px 1px #fff,0 1px 3px rgba(0,0,0,.5);box-shadow:inset 0 1px 1px #fff,0 1px 3px rgba(0,0,0,.5);position:relative;top:3px;display:inline-block}.tablesorter .button label{cursor:pointer;width:10px;height:10px;border-radius:25px;left:2px;top:2px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.5),0 1px 0 rgba(255,255,255,1);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.5),0 1px 0 rgba(255,255,255,1);box-shadow:inset 0 1px 1px rgba(0,0,0,.5),0 1px 0 rgba(255,255,255,1);background:#45484d;background:-webkit-linear-gradient(top,#222 0,#45484d 100%);background:-moz-linear-gradient(top,#222 0,#45484d 100%);background:-o-linear-gradient(top,#222 0,#45484d 100%);background:-ms-linear-gradient(top,#222 0,#45484d 100%);background:linear-gradient(top,#222 0,#45484d 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#222', endColorstr='#45484d', GradientType=0 )}.tablesorter .button label,.tablesorter .button label:after{position:absolute;-webkit-border-radius:25px;-moz-border-radius:25px}.tablesorter .button label:after{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";filter:alpha(opacity=0);opacity:0;content:'';width:8px;height:8px;background:#55f;background:-webkit-linear-gradient(top,#aaf 0,#55f 100%);background:-moz-linear-gradient(top,#aaf 0,#55f 100%);background:-o-linear-gradient(top,#aaf 0,#55f 100%);background:-ms-linear-gradient(top,#aaf 0,#55f 100%);background:linear-gradient(top,#aaf 0,#55f 100%);border-radius:25px;top:1px;left:1px;-webkit-box-shadow:inset 0 1px 1px #fff,0 1px 3px rgba(0,0,0,.5);-moz-box-shadow:inset 0 1px 1px #fff,0 1px 3px rgba(0,0,0,.5);box-shadow:inset 0 1px 1px #fff,0 1px 3px rgba(0,0,0,.5)}.tablesorter .button label:hover::after{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";filter:alpha(opacity=30);opacity:.3}.tablesorter .button input[type=checkbox]{visibility:hidden}.tablesorter .button input[type=checkbox]:checked+label:after{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";filter:alpha(opacity=100);opacity:1}.tablesorter .colorpicker{width:30px;height:18px}.tablesorter .ui-spinner-input{width:100px;height:18px}.tablesorter .currentColor,.tablesorter .ui-spinner,.tablesorter input.number{position:relative}.tablesorter .tablesorter-filter-row.hideme td *{height:1px;min-height:0;border:0;padding:0;margin:0;opacity:0;filter:alpha(opacity=0)}
|
||||||
BIN
dist/css/images/black-asc.gif
vendored
Normal file
|
After Width: | Height: | Size: 48 B |
BIN
dist/css/images/black-desc.gif
vendored
Normal file
|
After Width: | Height: | Size: 49 B |
BIN
dist/css/images/black-unsorted.gif
vendored
Normal file
|
After Width: | Height: | Size: 54 B |
BIN
dist/css/images/bootstrap-black-unsorted.png
vendored
Normal file
|
After Width: | Height: | Size: 284 B |
BIN
dist/css/images/bootstrap-white-unsorted.png
vendored
Normal file
|
After Width: | Height: | Size: 223 B |
BIN
dist/css/images/dragtable-handle.png
vendored
Normal file
|
After Width: | Height: | Size: 103 B |
7
dist/css/images/dragtable-handle.svg
vendored
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="2" height="13">
|
||||||
|
<rect style="fill:#333;fill-opacity:.8;" width="1" height="1" x="1" y="2"/>
|
||||||
|
<rect style="fill:#333;fill-opacity:.8;" width="1" height="1" x="1" y="4"/>
|
||||||
|
<rect style="fill:#333;fill-opacity:.8;" width="1" height="1" x="1" y="6"/>
|
||||||
|
<rect style="fill:#333;fill-opacity:.8;" width="1" height="1" x="1" y="8"/>
|
||||||
|
<rect style="fill:#333;fill-opacity:.8;" width="1" height="1" x="1" y="10"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 455 B |
BIN
dist/css/images/dropbox-asc-hovered.png
vendored
Normal file
|
After Width: | Height: | Size: 275 B |
BIN
dist/css/images/dropbox-asc.png
vendored
Normal file
|
After Width: | Height: | Size: 278 B |
BIN
dist/css/images/dropbox-desc-hovered.png
vendored
Normal file
|
After Width: | Height: | Size: 273 B |
BIN
dist/css/images/dropbox-desc.png
vendored
Normal file
|
After Width: | Height: | Size: 277 B |
BIN
dist/css/images/first.png
vendored
Normal file
|
After Width: | Height: | Size: 720 B |
BIN
dist/css/images/green-asc.gif
vendored
Normal file
|
After Width: | Height: | Size: 283 B |
BIN
dist/css/images/green-desc.gif
vendored
Normal file
|
After Width: | Height: | Size: 283 B |
BIN
dist/css/images/green-header.gif
vendored
Normal file
|
After Width: | Height: | Size: 513 B |
BIN
dist/css/images/green-unsorted.gif
vendored
Normal file
|
After Width: | Height: | Size: 520 B |
BIN
dist/css/images/ice-asc.gif
vendored
Normal file
|
After Width: | Height: | Size: 285 B |
BIN
dist/css/images/ice-desc.gif
vendored
Normal file
|
After Width: | Height: | Size: 285 B |
BIN
dist/css/images/ice-unsorted.gif
vendored
Normal file
|
After Width: | Height: | Size: 180 B |
BIN
dist/css/images/last.png
vendored
Normal file
|
After Width: | Height: | Size: 737 B |
BIN
dist/css/images/loading.gif
vendored
Normal file
|
After Width: | Height: | Size: 416 B |
BIN
dist/css/images/metro-black-asc.png
vendored
Normal file
|
After Width: | Height: | Size: 213 B |
BIN
dist/css/images/metro-black-desc.png
vendored
Normal file
|
After Width: | Height: | Size: 232 B |
BIN
dist/css/images/metro-loading.gif
vendored
Normal file
|
After Width: | Height: | Size: 673 B |
BIN
dist/css/images/metro-unsorted.png
vendored
Normal file
|
After Width: | Height: | Size: 181 B |
BIN
dist/css/images/metro-white-asc.png
vendored
Normal file
|
After Width: | Height: | Size: 209 B |
BIN
dist/css/images/metro-white-desc.png
vendored
Normal file
|
After Width: | Height: | Size: 224 B |
BIN
dist/css/images/next.png
vendored
Normal file
|
After Width: | Height: | Size: 736 B |
BIN
dist/css/images/prev.png
vendored
Normal file
|
After Width: | Height: | Size: 745 B |
BIN
dist/css/images/white-asc.gif
vendored
Normal file
|
After Width: | Height: | Size: 48 B |
BIN
dist/css/images/white-desc.gif
vendored
Normal file
|
After Width: | Height: | Size: 49 B |
BIN
dist/css/images/white-unsorted.gif
vendored
Normal file
|
After Width: | Height: | Size: 54 B |