Fixed the created_by auto save to current user if none is set at the creation of any new item. All other changes are only random variable name and date changes (due to automation)
This commit is contained in:
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
Binary file not shown.
@ -0,0 +1,78 @@
|
||||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata>
|
||||
This is a custom SVG font generated by IcoMoon.
|
||||
<iconset grid="16"></iconset>
|
||||
</metadata>
|
||||
<defs>
|
||||
<font id="footable" horiz-adv-x="512" >
|
||||
<font-face units-per-em="512" ascent="480" descent="-32" />
|
||||
<missing-glyph horiz-adv-x="512" />
|
||||
<glyph class="hidden" unicode="" d="M0,480L 512 -32L0 -32 z" horiz-adv-x="0" />
|
||||
<glyph unicode="" d="M 496,288L 320,288 L 320,464 c0,8.836-7.164,16-16,16l-96,0 c-8.836,0-16-7.164-16-16l0-176 L 16,288 c-8.836,0-16-7.164-16-16l0-96
|
||||
c0-8.836, 7.164-16, 16-16l 176,0 l0-176 c0-8.836, 7.164-16, 16-16l 96,0 c 8.836,0, 16,7.164, 16,16L 320,160 l 176,0 c 8.836,0, 16,7.164, 16,16l0,96
|
||||
C 512,280.836, 504.836,288, 496,288z" />
|
||||
<glyph unicode="" d="M0,272l0-96 c0-8.836, 7.164-16, 16-16l 480,0 c 8.836,0, 16,7.164, 16,16l0,96 c0,8.836-7.164,16-16,16L 16,288 C 7.164,288,0,280.836,0,272z" />
|
||||
<glyph unicode="" d="M 256,480C 114.615,480,0,365.385,0,224s 114.615-256, 256-256s 256,114.615, 256,256S 397.385,480, 256,480z M 288,192l0-128 l-64,0 L 224,192 L 96,192 l0,64
|
||||
l 128,0 L 224,384 l 64,0 l0-128 l 128,0 l0-64 L 288,192 z" />
|
||||
<glyph unicode="" d="M 256,480C 114.615,480,0,365.385,0,224s 114.615-256, 256-256s 256,114.615, 256,256S 397.385,480, 256,480z M 416,192L 96,192 l0,64 l 320,0 L 416,192 z" />
|
||||
<glyph unicode="" d="M 256,480C 114.615,480,0,365.385,0,224s 114.615-256, 256-256s 256,114.615, 256,256S 397.385,480, 256,480z M 256,32
|
||||
c-106.039,0-192,85.961-192,192c0,106.039, 85.961,192, 192,192c 106.039,0, 192-85.961, 192-192C 448,117.961, 362.039,32, 256,32zM 384,192 L 288,192 L 288,96 L 224,96 L 224,192 L 128,192 L 128,256 L 224,256 L 224,352 L 288,352 L 288,256 L 384,256 Z" />
|
||||
<glyph unicode="" d="M 256,480C 114.615,480,0,365.385,0,224s 114.615-256, 256-256s 256,114.615, 256,256S 397.385,480, 256,480z M 256,32
|
||||
c-106.039,0-192,85.961-192,192c0,106.039, 85.961,192, 192,192c 106.039,0, 192-85.961, 192-192C 448,117.961, 362.039,32, 256,32zM 128,256L 384,256L 384,192L 128,192z" />
|
||||
<glyph unicode="" d="M 256,214.857l0-18.286 q0-4 -2.571-6.571t-6.571-2.571l-64,0 l0-64 q0-4 -2.571-6.571t-6.571-2.571l-18.286,0 q-4,0 -6.571,2.571t-2.571,6.571l0,64 l-64,0 q-4,0 -6.571,2.571t-2.571,6.571l0,18.286 q0,4 2.571,6.571t 6.571,2.571l 64,0 l0,64 q0,4 2.571,6.571t 6.571,2.571l 18.286,0 q 4,0 6.571-2.571t 2.571-6.571l0-64 l 64,0 q 4,0 6.571-2.571t 2.571-6.571zM 292.571,105.143l0,201.143 q0,11.429 -8,19.429t-19.429,8l-201.143,0 q-11.429,0 -19.429-8 t-8-19.429l0-201.143 q0-11.429 8-19.429t 19.429-8l 201.143,0 q 11.429,0 19.429,8t 8,19.429zM 329.143,306.286l0-201.143 q0-26.286 -18.714-45.143t-45.286-18.857l-201.143,0 q-26.571,0 -45.286,18.857t-18.714,45.143l0,201.143 q0,26.571 18.714,45.286t 45.286,18.714l 201.143,0 q 26.571,0 45.286-18.714t 18.714-45.286z" horiz-adv-x="329.143" />
|
||||
<glyph unicode="" d="M 265.143,370.286q 26.571,0 45.286-18.714t 18.714-45.286l0-201.143 q0-26.286 -18.714-45.143t-45.286-18.857l-201.143,0 q-26.571,0 -45.286,18.857t-18.714,45.143l0,201.143 q0,26.571 18.714,45.286t 45.286,18.714l 201.143,0 zM 292.571,105.143l0,201.143 q0,11.429 -8,19.429t-19.429,8l-201.143,0 q-11.429,0 -19.429-8t-8-19.429l0-201.143 q0-11.429 8-19.429t 19.429-8l 201.143,0 q 11.429,0 19.429,8t 8,19.429z M 246.857,224q 4,0 6.571-2.571t 2.571-6.571l0-18.286 q0-4 -2.571-6.571t-6.571-2.571l-164.571,0 q-4,0 -6.571,2.571t-2.571,6.571l0,18.286 q0,4 2.571,6.571t 6.571,2.571l 164.571,0 z" horiz-adv-x="329.143" />
|
||||
<glyph unicode="" d="M 365.714,205.714l0,36.571 q0,7.429 -5.429,12.857t-12.857,5.429l-91.429,0 l0,91.429 q0,7.429 -5.429,12.857t-12.857,5.429l-36.571,0 q-7.429,0 -12.857-5.429t-5.429-12.857l0-91.429 l-91.429,0 q-7.429,0 -12.857-5.429t-5.429-12.857l0-36.571 q0-7.429 5.429-12.857t 12.857-5.429l 91.429,0 l0-91.429 q0-7.429 5.429-12.857t 12.857-5.429l 36.571,0 q 7.429,0 12.857,5.429t 5.429,12.857l0,91.429 l 91.429,0 q 7.429,0 12.857,5.429t 5.429,12.857zM 438.857,361.143l0-274.286 q0-34 -24.143-58.143t-58.143-24.143l-274.286,0 q-34,0 -58.143,24.143t-24.143,58.143l0,274.286 q0,34 24.143,58.143t 58.143,24.143l 274.286,0 q 34,0 58.143-24.143t 24.143-58.143z" horiz-adv-x="438.857" />
|
||||
<glyph unicode="" d="M 365.714,205.714l0,36.571 q0,7.429 -5.429,12.857t-12.857,5.429l-256,0 q-7.429,0 -12.857-5.429t-5.429-12.857l0-36.571 q0-7.429 5.429-12.857t 12.857-5.429l 256,0 q 7.429,0 12.857,5.429t 5.429,12.857zM 438.857,361.143l0-274.286 q0-34 -24.143-58.143t-58.143-24.143l-274.286,0 q-34,0 -58.143,24.143t-24.143,58.143l0,274.286 q0,34 24.143,58.143t 58.143,24.143l 274.286,0 q 34,0 58.143-24.143 t 24.143-58.143z" horiz-adv-x="438.857" />
|
||||
<glyph unicode="" d="M 512,224C 512,82.615, 397.385-32, 256-32s -256,114.615, -256,256s 114.615,256, 256,256S 512,365.385, 512,224z M 233.372,374.628
|
||||
l -128-128.001C 99.124,240.379, 96,232.189, 96,224s 3.124-16.379 9.372-22.627c 12.497-12.497 32.759-12.497, 45.256,0L 224,274.745
|
||||
L 224,96 c 0-17.673 14.327-32 32-32c 17.673,0, 32,14.327, 32,32l0,178.745 l 73.373-73.373c 12.497-12.497 32.758-12.497, 45.255,0
|
||||
c 12.497,12.497, 12.497,32.758, 0,45.254l -128,128.001C 266.131,387.124, 245.869,387.124, 233.372,374.628z" />
|
||||
<glyph unicode="" d="M 512,224C 512,365.385, 397.385,480, 256,480s -256-114.615, -256-256s 114.615-256, 256-256S 512,82.615, 512,224z M 233.372,73.372
|
||||
l -128,128.001C 99.124,207.621, 96,215.811, 96,224s 3.124,16.379 9.372,22.627c 12.497,12.497 32.759,12.497, 45.256,0L 224,173.255
|
||||
L 224,352 c 0,17.673 14.327,32 32,32c 17.673,0, 32-14.327, 32-32l0-178.745 l 73.373,73.373c 12.497,12.497 32.758,12.497, 45.255,0
|
||||
c 12.497-12.497, 12.497-32.758, 0-45.254l -128-128.001C 266.131,60.876, 245.869,60.876, 233.372,73.372z" />
|
||||
<glyph unicode="" d="M 256,480C 397.385,480, 512,365.385, 512,224s -114.615-256, -256-256s -256,114.615, -256,256S 114.615,480, 256,480z M 105.372,201.372
|
||||
l 128.001-128C 239.621,67.124, 247.811,64, 256,64s 16.379,3.124 22.627,9.372c 12.497,12.497 12.497,32.759,0,45.256L 205.255,192
|
||||
L 384,192 c 17.673,0 32,14.327 32,32c0,17.673, -14.327,32, -32,32l-178.745,0 l 73.373,73.373c 12.497,12.497 12.497,32.758,0,45.255
|
||||
c -12.497,12.497, -32.758,12.497, -45.254,0l -128.001-128C 92.876,234.131, 92.876,213.869, 105.372,201.372z" />
|
||||
<glyph unicode="" d="M 256,480C 114.615,480,0,365.385,0,224s 114.615-256, 256-256s 256,114.615, 256,256S 397.385,480, 256,480z M 406.628,201.372
|
||||
l-128.001-128C 272.379,67.124, 264.189,64, 256,64s-16.379,3.124-22.627,9.372c-12.497,12.497-12.497,32.759,0,45.256L 306.745,192
|
||||
L 128,192 c-17.673,0-32,14.327-32,32c0,17.673, 14.327,32, 32,32l 178.745,0 l-73.373,73.373c-12.497,12.497-12.497,32.758,0,45.255
|
||||
c 12.497,12.497, 32.758,12.497, 45.254,0l 128.001-128C 419.124,234.131, 419.124,213.869, 406.628,201.372z" />
|
||||
<glyph unicode="" d="M0,160L 96,64L 256,224L 416,64L 512,160L 256.001,416 z" />
|
||||
<glyph unicode="" d="M 512,288L 416,384L 256,224L 96,384L0,288L 256,32.001 z" />
|
||||
<glyph unicode="" d="M 320-32L 416,64L 256,224L 416,384L 320,480L 64,224 z" />
|
||||
<glyph unicode="" d="M 192,480L 96,384L 256,224L 96,64L 192-32L 448,224 z" />
|
||||
<glyph unicode="" d="M 292.571,132.571q0-7.429 -5.429-12.857t-12.857-5.429l-256,0 q-7.429,0 -12.857,5.429t-5.429,12.857t 5.429,12.857l 128,128q 5.429,5.429 12.857,5.429t 12.857-5.429l 128-128q 5.429-5.429 5.429-12.857z" horiz-adv-x="292.571" />
|
||||
<glyph unicode="" d="M 292.571,278.857q0-7.429 -5.429-12.857l-128-128q-5.429-5.429 -12.857-5.429t-12.857,5.429l-128,128q-5.429,5.429 -5.429,12.857t 5.429,12.857t 12.857,5.429l 256,0 q 7.429,0 12.857-5.429t 5.429-12.857z" horiz-adv-x="292.571" />
|
||||
<glyph unicode="" d="M 182.857,352l0-256 q0-7.429 -5.429-12.857t-12.857-5.429t-12.857,5.429l-128,128q-5.429,5.429 -5.429,12.857t 5.429,12.857l 128,128q 5.429,5.429 12.857,5.429t 12.857-5.429t 5.429-12.857z" horiz-adv-x="182.857" />
|
||||
<glyph unicode="" d="M 164.571,224q0-7.429 -5.429-12.857l-128-128q-5.429-5.429 -12.857-5.429t-12.857,5.429t-5.429,12.857l0,256 q0,7.429 5.429,12.857t 12.857,5.429t 12.857-5.429l 128-128q 5.429-5.429 5.429-12.857z" horiz-adv-x="182.857" />
|
||||
<glyph unicode="" d="M 256,480L 32-32L 256,64L 480-32 z" />
|
||||
<glyph unicode="" d="M 256-32L 480,480L 256,384L 32,480 z" />
|
||||
<glyph unicode="" d="M0,224L 512,0L 416,224L 512,448 z" />
|
||||
<glyph unicode="" d="M 512,224L0,448L 96,224L0,0 z" />
|
||||
<glyph unicode="" d="M 512,224C 512,82.615, 397.385-32, 256-32s -256,114.615, -256,256s 114.615,256, 256,256S 512,365.385, 512,224z M 48,224
|
||||
c 0-114.875 93.125-208 208-208S 464,109.125, 464,224s -93.125,208, -208,208S 48,338.875, 48,224zM 278.627,374.628l 128-128.001c 12.497-12.496 12.497-32.757 0-45.254c -12.497-12.497 -32.758-12.497,-45.255,0L 288,274.745
|
||||
L 288,96 c 0-17.673 -14.327-32 -32-32c-17.673,0, -32,14.327, -32,32l0,178.745 l -73.372-73.373c -12.497-12.497 -32.759-12.497,-45.256,0
|
||||
C 99.124,207.621, 96,215.811, 96,224s 3.124,16.379, 9.372,22.627l 128,128.001C 245.869,387.124, 266.131,387.124, 278.627,374.628z" />
|
||||
<glyph unicode="" d="M 512,224C 512,365.385, 397.385,480, 256,480s -256-114.615, -256-256s 114.615-256, 256-256S 512,82.615, 512,224z M 48,224
|
||||
c 0,114.875 93.125,208 208,208S 464,338.875, 464,224s -93.125-208, -208-208S 48,109.125, 48,224zM 278.627,73.372l 128,128.001c 12.497,12.496 12.497,32.757 0,45.254c -12.497,12.497 -32.758,12.497,-45.255,0L 288,173.255
|
||||
L 288,352 c 0,17.673 -14.327,32 -32,32c-17.673,0, -32-14.327, -32-32l0-178.745 l -73.372,73.373c -12.497,12.497 -32.759,12.497,-45.256,0
|
||||
C 99.124,240.379, 96,232.189, 96,224s 3.124-16.379, 9.372-22.627l 128-128.001C 245.869,60.876, 266.131,60.876, 278.627,73.372z" />
|
||||
<glyph unicode="" d="M 256,480C 397.385,480, 512,365.385, 512,224s -114.615-256, -256-256s -256,114.615, -256,256S 114.615,480, 256,480z M 256,16
|
||||
c 114.875,0 208,93.125 208,208S 370.875,432, 256,432s -208-93.125, -208-208S 141.125,16, 256,16zM 105.372,246.627l 128.001,128c 12.496,12.497 32.757,12.497 45.254,0c 12.497-12.497 12.497-32.758,0-45.255L 205.255,256
|
||||
L 384,256 c 17.673,0 32-14.327 32-32c0-17.673, -14.327-32, -32-32l-178.745,0 l 73.373-73.372c 12.497-12.497 12.497-32.759,0-45.256
|
||||
C 272.379,67.124, 264.189,64, 256,64s -16.379,3.124, -22.627,9.372l -128.001,128C 92.876,213.869, 92.876,234.131, 105.372,246.627z" />
|
||||
<glyph unicode="" d="M 256,480C 114.615,480,0,365.385,0,224s 114.615-256, 256-256s 256,114.615, 256,256S 397.385,480, 256,480z M 256,16
|
||||
c-114.875,0-208,93.125-208,208S 141.125,432, 256,432s 208-93.125, 208-208S 370.875,16, 256,16zM 406.628,246.627l-128.001,128c-12.496,12.497-32.757,12.497-45.254,0c-12.497-12.497-12.497-32.758,0-45.255L 306.745,256
|
||||
L 128,256 c-17.673,0-32-14.327-32-32c0-17.673, 14.327-32, 32-32l 178.745,0 l-73.373-73.372c-12.497-12.497-12.497-32.759,0-45.256
|
||||
C 239.621,67.124, 247.811,64, 256,64s 16.379,3.124, 22.627,9.372l 128.001,128C 419.124,213.869, 419.124,234.131, 406.628,246.627z" />
|
||||
<glyph unicode="" d="M 307.143,141.714q0-3.714 -2.857-6.571l-14.286-14.286q-2.857-2.857 -6.571-2.857t-6.571,2.857l-112.286,112.286l-112.286-112.286q-2.857-2.857 -6.571-2.857t-6.571,2.857l-14.286,14.286q-2.857,2.857 -2.857,6.571t 2.857,6.571l 133.143,133.143q 2.857,2.857 6.571,2.857t 6.571-2.857l 133.143-133.143q 2.857-2.857 2.857-6.571z" horiz-adv-x="329.143" />
|
||||
<glyph unicode="" d="M 307.143,269.714q0-3.714 -2.857-6.571l-133.143-133.143q-2.857-2.857 -6.571-2.857t-6.571,2.857l-133.143,133.143q-2.857,2.857 -2.857,6.571t 2.857,6.571l 14.286,14.286q 2.857,2.857 6.571,2.857t 6.571-2.857l 112.286-112.286l 112.286,112.286q 2.857,2.857 6.571,2.857t 6.571-2.857l 14.286-14.286q 2.857-2.857 2.857-6.571z" horiz-adv-x="329.143" />
|
||||
<glyph unicode="" d="M 179.143,324.571q0-3.714 -2.857-6.571l-112.286-112.286l 112.286-112.286q 2.857-2.857 2.857-6.571t-2.857-6.571l-14.286-14.286q-2.857-2.857 -6.571-2.857t-6.571,2.857l-133.143,133.143q-2.857,2.857 -2.857,6.571t 2.857,6.571l 133.143,133.143q 2.857,2.857 6.571,2.857t 6.571-2.857l 14.286-14.286q 2.857-2.857 2.857-6.571z" horiz-adv-x="182.857" />
|
||||
<glyph unicode="" d="M 170,205.714q0-3.714 -2.857-6.571l-133.143-133.143q-2.857-2.857 -6.571-2.857t-6.571,2.857l-14.286,14.286q-2.857,2.857 -2.857,6.571t 2.857,6.571l 112.286,112.286l-112.286,112.286q-2.857,2.857 -2.857,6.571t 2.857,6.571l 14.286,14.286q 2.857,2.857 6.571,2.857t 6.571-2.857l 133.143-133.143q 2.857-2.857 2.857-6.571z" horiz-adv-x="182.857" />
|
||||
<glyph unicode="" d="M 292.571,169.143q0-7.429 -5.429-12.857l-128-128q-5.429-5.429 -12.857-5.429t-12.857,5.429l-128,128q-5.429,5.429 -5.429,12.857t 5.429,12.857t 12.857,5.429l 256,0 q 7.429,0 12.857-5.429t 5.429-12.857zM 292.571,278.857q0-7.429 -5.429-12.857t-12.857-5.429l-256,0 q-7.429,0 -12.857,5.429t-5.429,12.857t 5.429,12.857l 128,128q 5.429,5.429 12.857,5.429t 12.857-5.429l 128-128q 5.429-5.429 5.429-12.857z" horiz-adv-x="292.571" />
|
||||
<glyph unicode=" " horiz-adv-x="256" />
|
||||
</font></defs></svg>
|
After Width: | Height: | Size: 13 KiB |
Binary file not shown.
Binary file not shown.
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
@ -0,0 +1,178 @@
|
||||
@font-face {
|
||||
font-family: 'footable';
|
||||
src: url('fonts/footable.eot');
|
||||
src: url('fonts/footable.eot?#iefix') format('embedded-opentype'), url('fonts/footable.woff') format('woff'), url('fonts/footable.ttf') format('truetype'), url('fonts/footable.svg#footable') format('svg');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
@media screen and (-webkit-min-device-pixel-ratio: 0) {
|
||||
@font-face {
|
||||
font-family: 'footable';
|
||||
src: url('fonts/footable.svg#footable') format('svg');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
}
|
||||
.footable {
|
||||
width: 100%;
|
||||
/** SORTING **/
|
||||
|
||||
/** PAGINATION **/
|
||||
|
||||
}
|
||||
.footable.breakpoint > tbody > tr.footable-detail-show > td {
|
||||
border-bottom: none;
|
||||
}
|
||||
.footable.breakpoint > tbody > tr.footable-detail-show > td > span.footable-toggle:before {
|
||||
content: "\e001";
|
||||
}
|
||||
.footable.breakpoint > tbody > tr:hover:not(.footable-row-detail) {
|
||||
cursor: pointer;
|
||||
}
|
||||
.footable.breakpoint > tbody > tr > td.footable-cell-detail {
|
||||
background: #eee;
|
||||
border-top: none;
|
||||
}
|
||||
.footable.breakpoint > tbody > tr > td > span.footable-toggle {
|
||||
display: inline-block;
|
||||
font-family: 'footable';
|
||||
speak: none;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-variant: normal;
|
||||
text-transform: none;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
padding-right: 5px;
|
||||
font-size: 14px;
|
||||
color: #888888;
|
||||
}
|
||||
.footable.breakpoint > tbody > tr > td > span.footable-toggle:before {
|
||||
content: "\e000";
|
||||
}
|
||||
.footable.breakpoint.toggle-circle > tbody > tr.footable-detail-show > td > span.footable-toggle:before {
|
||||
content: "\e005";
|
||||
}
|
||||
.footable.breakpoint.toggle-circle > tbody > tr > td > span.footable-toggle:before {
|
||||
content: "\e004";
|
||||
}
|
||||
.footable.breakpoint.toggle-circle-filled > tbody > tr.footable-detail-show > td > span.footable-toggle:before {
|
||||
content: "\e003";
|
||||
}
|
||||
.footable.breakpoint.toggle-circle-filled > tbody > tr > td > span.footable-toggle:before {
|
||||
content: "\e002";
|
||||
}
|
||||
.footable.breakpoint.toggle-square > tbody > tr.footable-detail-show > td > span.footable-toggle:before {
|
||||
content: "\e007";
|
||||
}
|
||||
.footable.breakpoint.toggle-square > tbody > tr > td > span.footable-toggle:before {
|
||||
content: "\e006";
|
||||
}
|
||||
.footable.breakpoint.toggle-square-filled > tbody > tr.footable-detail-show > td > span.footable-toggle:before {
|
||||
content: "\e009";
|
||||
}
|
||||
.footable.breakpoint.toggle-square-filled > tbody > tr > td > span.footable-toggle:before {
|
||||
content: "\e008";
|
||||
}
|
||||
.footable.breakpoint.toggle-arrow > tbody > tr.footable-detail-show > td > span.footable-toggle:before {
|
||||
content: "\e00f";
|
||||
}
|
||||
.footable.breakpoint.toggle-arrow > tbody > tr > td > span.footable-toggle:before {
|
||||
content: "\e011";
|
||||
}
|
||||
.footable.breakpoint.toggle-arrow-small > tbody > tr.footable-detail-show > td > span.footable-toggle:before {
|
||||
content: "\e013";
|
||||
}
|
||||
.footable.breakpoint.toggle-arrow-small > tbody > tr > td > span.footable-toggle:before {
|
||||
content: "\e015";
|
||||
}
|
||||
.footable.breakpoint.toggle-arrow-circle > tbody > tr.footable-detail-show > td > span.footable-toggle:before {
|
||||
content: "\e01b";
|
||||
}
|
||||
.footable.breakpoint.toggle-arrow-circle > tbody > tr > td > span.footable-toggle:before {
|
||||
content: "\e01d";
|
||||
}
|
||||
.footable.breakpoint.toggle-arrow-circle-filled > tbody > tr.footable-detail-show > td > span.footable-toggle:before {
|
||||
content: "\e00b";
|
||||
}
|
||||
.footable.breakpoint.toggle-arrow-circle-filled > tbody > tr > td > span.footable-toggle:before {
|
||||
content: "\e00d";
|
||||
}
|
||||
.footable.breakpoint.toggle-arrow-tiny > tbody > tr.footable-detail-show > td > span.footable-toggle:before {
|
||||
content: "\e01f";
|
||||
}
|
||||
.footable.breakpoint.toggle-arrow-tiny > tbody > tr > td > span.footable-toggle:before {
|
||||
content: "\e021";
|
||||
}
|
||||
.footable.breakpoint.toggle-arrow-alt > tbody > tr.footable-detail-show > td > span.footable-toggle:before {
|
||||
content: "\e017";
|
||||
}
|
||||
.footable.breakpoint.toggle-arrow-alt > tbody > tr > td > span.footable-toggle:before {
|
||||
content: "\e019";
|
||||
}
|
||||
.footable.breakpoint.toggle-medium > tbody > tr > td > span.footable-toggle {
|
||||
font-size: 18px;
|
||||
}
|
||||
.footable.breakpoint.toggle-large > tbody > tr > td > span.footable-toggle {
|
||||
font-size: 24px;
|
||||
}
|
||||
.footable > thead > tr > th {
|
||||
-webkit-touch-callout: none;
|
||||
-webkit-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
-moz-user-select: -moz-none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
.footable > thead > tr > th.footable-sortable:hover {
|
||||
cursor: pointer;
|
||||
}
|
||||
.footable > thead > tr > th.footable-sorted > span.footable-sort-indicator:before {
|
||||
content: "\e013";
|
||||
}
|
||||
.footable > thead > tr > th.footable-sorted-desc > span.footable-sort-indicator:before {
|
||||
content: "\e012";
|
||||
}
|
||||
.footable > thead > tr > th > span.footable-sort-indicator {
|
||||
display: inline-block;
|
||||
font-family: 'footable';
|
||||
speak: none;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-variant: normal;
|
||||
text-transform: none;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
padding-left: 5px;
|
||||
}
|
||||
.footable > thead > tr > th > span.footable-sort-indicator:before {
|
||||
content: "\e022";
|
||||
}
|
||||
.footable > tfoot .pagination {
|
||||
margin: 0;
|
||||
}
|
||||
.footable.no-paging .hide-if-no-paging {
|
||||
display: none;
|
||||
}
|
||||
.footable-row-detail-inner {
|
||||
display: table;
|
||||
}
|
||||
.footable-row-detail-row {
|
||||
display: table-row;
|
||||
line-height: 1.5em;
|
||||
}
|
||||
.footable-row-detail-group {
|
||||
display: block;
|
||||
line-height: 2em;
|
||||
font-size: 1.2em;
|
||||
font-weight: bold;
|
||||
}
|
||||
.footable-row-detail-name {
|
||||
display: table-cell;
|
||||
font-weight: bold;
|
||||
padding-right: 0.5em;
|
||||
}
|
||||
.footable-row-detail-value {
|
||||
display: table-cell;
|
||||
}
|
||||
.footable-odd {
|
||||
background-color: #f7f7f7;
|
||||
}
|
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/css/footable.core.min.css
vendored
Normal file
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/css/footable.core.min.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
@font-face{font-family:'footable';src:url('fonts/footable.eot');src:url('fonts/footable.eot?#iefix') format('embedded-opentype'),url('fonts/footable.woff') format('woff'),url('fonts/footable.ttf') format('truetype'),url('fonts/footable.svg#footable') format('svg');font-weight:normal;font-style:normal}@media screen and (-webkit-min-device-pixel-ratio:0){@font-face{font-family:'footable';src:url('fonts/footable.svg#footable') format('svg');font-weight:normal;font-style:normal}}.footable{width:100%}.footable.breakpoint>tbody>tr.footable-detail-show>td{border-bottom:0}.footable.breakpoint>tbody>tr.footable-detail-show>td>span.footable-toggle:before{content:"\e001"}.footable.breakpoint>tbody>tr:hover:not(.footable-row-detail){cursor:pointer}.footable.breakpoint>tbody>tr>td.footable-cell-detail{background:#eee;border-top:0}.footable.breakpoint>tbody>tr>td>span.footable-toggle{display:inline-block;font-family:'footable';speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;padding-right:5px;font-size:14px;color:#888}.footable.breakpoint>tbody>tr>td>span.footable-toggle:before{content:"\e000"}.footable.breakpoint.toggle-circle>tbody>tr.footable-detail-show>td>span.footable-toggle:before{content:"\e005"}.footable.breakpoint.toggle-circle>tbody>tr>td>span.footable-toggle:before{content:"\e004"}.footable.breakpoint.toggle-circle-filled>tbody>tr.footable-detail-show>td>span.footable-toggle:before{content:"\e003"}.footable.breakpoint.toggle-circle-filled>tbody>tr>td>span.footable-toggle:before{content:"\e002"}.footable.breakpoint.toggle-square>tbody>tr.footable-detail-show>td>span.footable-toggle:before{content:"\e007"}.footable.breakpoint.toggle-square>tbody>tr>td>span.footable-toggle:before{content:"\e006"}.footable.breakpoint.toggle-square-filled>tbody>tr.footable-detail-show>td>span.footable-toggle:before{content:"\e009"}.footable.breakpoint.toggle-square-filled>tbody>tr>td>span.footable-toggle:before{content:"\e008"}.footable.breakpoint.toggle-arrow>tbody>tr.footable-detail-show>td>span.footable-toggle:before{content:"\e00f"}.footable.breakpoint.toggle-arrow>tbody>tr>td>span.footable-toggle:before{content:"\e011"}.footable.breakpoint.toggle-arrow-small>tbody>tr.footable-detail-show>td>span.footable-toggle:before{content:"\e013"}.footable.breakpoint.toggle-arrow-small>tbody>tr>td>span.footable-toggle:before{content:"\e015"}.footable.breakpoint.toggle-arrow-circle>tbody>tr.footable-detail-show>td>span.footable-toggle:before{content:"\e01b"}.footable.breakpoint.toggle-arrow-circle>tbody>tr>td>span.footable-toggle:before{content:"\e01d"}.footable.breakpoint.toggle-arrow-circle-filled>tbody>tr.footable-detail-show>td>span.footable-toggle:before{content:"\e00b"}.footable.breakpoint.toggle-arrow-circle-filled>tbody>tr>td>span.footable-toggle:before{content:"\e00d"}.footable.breakpoint.toggle-arrow-tiny>tbody>tr.footable-detail-show>td>span.footable-toggle:before{content:"\e01f"}.footable.breakpoint.toggle-arrow-tiny>tbody>tr>td>span.footable-toggle:before{content:"\e021"}.footable.breakpoint.toggle-arrow-alt>tbody>tr.footable-detail-show>td>span.footable-toggle:before{content:"\e017"}.footable.breakpoint.toggle-arrow-alt>tbody>tr>td>span.footable-toggle:before{content:"\e019"}.footable.breakpoint.toggle-medium>tbody>tr>td>span.footable-toggle{font-size:18px}.footable.breakpoint.toggle-large>tbody>tr>td>span.footable-toggle{font-size:24px}.footable>thead>tr>th{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:-moz-none;-ms-user-select:none;user-select:none}.footable>thead>tr>th.footable-sortable:hover{cursor:pointer}.footable>thead>tr>th.footable-sorted>span.footable-sort-indicator:before{content:"\e013"}.footable>thead>tr>th.footable-sorted-desc>span.footable-sort-indicator:before{content:"\e012"}.footable>thead>tr>th>span.footable-sort-indicator{display:inline-block;font-family:'footable';speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;padding-left:5px}.footable>thead>tr>th>span.footable-sort-indicator:before{content:"\e022"}.footable>tfoot .pagination{margin:0}.footable.no-paging .hide-if-no-paging{display:none}.footable-row-detail-inner{display:table}.footable-row-detail-row{display:table-row;line-height:1.5em}.footable-row-detail-group{display:block;line-height:2em;font-size:1.2em;font-weight:bold}.footable-row-detail-name{display:table-cell;font-weight:bold;padding-right:.5em}.footable-row-detail-value{display:table-cell}.footable-odd{background-color:#f7f7f7}
|
@ -0,0 +1,152 @@
|
||||
.footable {
|
||||
border-collapse: separate;
|
||||
border-spacing: 0;
|
||||
width: 100%;
|
||||
border: 3px solid #52b9e9;
|
||||
font-family: "Open Sans", Arial, Helvetica, sans-serif;
|
||||
color: #444444;
|
||||
background: #efefef;
|
||||
-moz-border-radius: 0;
|
||||
-webkit-border-radius: 0;
|
||||
border-radius: 0;
|
||||
}
|
||||
.footable.breakpoint > tbody > tr.footable-row-detail {
|
||||
background: #eeeeee;
|
||||
}
|
||||
.footable.breakpoint > tbody > tr:hover:not(.footable-row-detail) {
|
||||
cursor: pointer;
|
||||
}
|
||||
.footable.breakpoint > tbody > tr > td.footable-row-detail-cell {
|
||||
background: #fff;
|
||||
}
|
||||
.footable > tbody img {
|
||||
vertical-align: middle;
|
||||
}
|
||||
.footable > tbody > tr:hover:not(.footable-row-detail) {
|
||||
background: #dddddd;
|
||||
}
|
||||
.footable > tbody > tr:hover:not(.footable-row-detail) > td {
|
||||
color: #000000;
|
||||
}
|
||||
.footable > tbody > tr:last-child > td {
|
||||
border-bottom: none;
|
||||
}
|
||||
.footable > tbody > tr > td {
|
||||
border-top: 1px solid #dddddd;
|
||||
padding: 10px;
|
||||
text-align: left;
|
||||
border-left: none;
|
||||
}
|
||||
.footable > tbody > tr > td.footable-row-detail-cell,
|
||||
.footable > tbody > tr > td.footable-first-column {
|
||||
border-left: none;
|
||||
}
|
||||
.footable > thead > tr > th {
|
||||
border-bottom: 1px solid #dddddd;
|
||||
padding: 10px;
|
||||
text-align: left;
|
||||
}
|
||||
.footable > thead > tr > th,
|
||||
.footable > thead > tr > td {
|
||||
background-color: #52b9e9;
|
||||
border: 1px solid #52b9e9;
|
||||
color: #ffffff;
|
||||
border-top: none;
|
||||
border-left: none;
|
||||
font-weight: normal;
|
||||
}
|
||||
.footable > thead > tr > th.footable-first-column,
|
||||
.footable > thead > tr > td.footable-first-column {
|
||||
border-left: none;
|
||||
}
|
||||
.footable > tfoot > tr > th,
|
||||
.footable > tfoot > tr > td {
|
||||
background-color: #52b9e9;
|
||||
border: 1px solid #52b9e9;
|
||||
color: #ffffff;
|
||||
border-top: none;
|
||||
border-left: none;
|
||||
padding: 5px;
|
||||
}
|
||||
.footable > tfoot .pagination {
|
||||
text-align: center;
|
||||
}
|
||||
.footable > tfoot .pagination ul {
|
||||
display: inline-block;
|
||||
-webkit-box-shadow: none;
|
||||
-moz-box-shadow: none;
|
||||
box-shadow: none;
|
||||
vertical-align: middle;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
.footable > tfoot .pagination ul > li {
|
||||
display: inline;
|
||||
}
|
||||
.footable > tfoot .pagination ul > li > a,
|
||||
.footable > tfoot .pagination ul > li > span {
|
||||
float: left;
|
||||
border: 2px solid transparent;
|
||||
margin: 0 3px;
|
||||
color: #ffffff;
|
||||
background: transparent;
|
||||
padding: 1px 5px;
|
||||
text-decoration: none;
|
||||
}
|
||||
.footable > tfoot .pagination ul > li.disabled > a {
|
||||
color: #888;
|
||||
}
|
||||
.footable > tfoot .pagination ul > li.active > a {
|
||||
border-color: #ffffff;
|
||||
}
|
||||
.footable > tfoot .pagination ul > li:first-child > a,
|
||||
.footable > tfoot .pagination ul > li:last-child > a,
|
||||
.footable > tfoot .pagination ul > li:first-child > span,
|
||||
.footable > tfoot .pagination ul > li:last-child > span {
|
||||
-moz-border-radius: 0;
|
||||
-webkit-border-radius: 0;
|
||||
border-radius: 0;
|
||||
}
|
||||
.footable.metro-red {
|
||||
border-color: #fa3031;
|
||||
}
|
||||
.footable.metro-red > tfoot > tr > th,
|
||||
.footable.metro-red > thead > tr > th,
|
||||
.footable.metro-red > tfoot > tr > td,
|
||||
.footable.metro-red > thead > tr > td {
|
||||
background-color: #fa3031;
|
||||
border-color: #fa3031;
|
||||
}
|
||||
.footable.metro-purple {
|
||||
border-color: #932ab6;
|
||||
}
|
||||
.footable.metro-purple > tfoot > tr > th,
|
||||
.footable.metro-purple > thead > tr > th,
|
||||
.footable.metro-purple > tfoot > tr > td,
|
||||
.footable.metro-purple > thead > tr > td {
|
||||
background-color: #932ab6;
|
||||
border-color: #932ab6;
|
||||
}
|
||||
.footable.metro-green {
|
||||
border-color: #43c83c;
|
||||
}
|
||||
.footable.metro-green > tfoot > tr > th,
|
||||
.footable.metro-green > thead > tr > th,
|
||||
.footable.metro-green > tfoot > tr > td,
|
||||
.footable.metro-green > thead > tr > td {
|
||||
background-color: #43c83c;
|
||||
border-color: #43c83c;
|
||||
}
|
||||
.footable.metro-blue {
|
||||
border-color: #1171a3;
|
||||
}
|
||||
.footable.metro-blue > tfoot > tr > th,
|
||||
.footable.metro-blue > thead > tr > th,
|
||||
.footable.metro-blue > tfoot > tr > td,
|
||||
.footable.metro-blue > thead > tr > td {
|
||||
background-color: #1171a3;
|
||||
border-color: #1171a3;
|
||||
}
|
||||
.footable-odd {
|
||||
background-color: #f7f7f7;
|
||||
}
|
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/css/footable.metro.min.css
vendored
Normal file
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/css/footable.metro.min.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
.footable{border-collapse:separate;border-spacing:0;width:100%;border:3px solid #52b9e9;font-family:"Open Sans",Arial,Helvetica,sans-serif;color:#444;background:#efefef;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.footable.breakpoint>tbody>tr.footable-row-detail{background:#eee}.footable.breakpoint>tbody>tr:hover:not(.footable-row-detail){cursor:pointer}.footable.breakpoint>tbody>tr>td.footable-row-detail-cell{background:#fff}.footable>tbody img{vertical-align:middle}.footable>tbody>tr:hover:not(.footable-row-detail){background:#ddd}.footable>tbody>tr:hover:not(.footable-row-detail)>td{color:#000}.footable>tbody>tr:last-child>td{border-bottom:0}.footable>tbody>tr>td{border-top:1px solid #ddd;padding:10px;text-align:left;border-left:none}.footable>tbody>tr>td.footable-row-detail-cell,.footable>tbody>tr>td.footable-first-column{border-left:none}.footable>thead>tr>th{border-bottom:1px solid #ddd;padding:10px;text-align:left}.footable>thead>tr>th,.footable>thead>tr>td{background-color:#52b9e9;border:1px solid #52b9e9;color:#fff;border-top:0;border-left:none;font-weight:normal}.footable>thead>tr>th.footable-first-column,.footable>thead>tr>td.footable-first-column{border-left:none}.footable>tfoot>tr>th,.footable>tfoot>tr>td{background-color:#52b9e9;border:1px solid #52b9e9;color:#fff;border-top:0;border-left:none;padding:5px}.footable>tfoot .pagination{text-align:center}.footable>tfoot .pagination ul{display:inline-block;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;vertical-align:middle;margin:0;padding:0}.footable>tfoot .pagination ul>li{display:inline}.footable>tfoot .pagination ul>li>a,.footable>tfoot .pagination ul>li>span{float:left;border:2px solid transparent;margin:0 3px;color:#fff;background:transparent;padding:1px 5px;text-decoration:none}.footable>tfoot .pagination ul>li.disabled>a{color:#888}.footable>tfoot .pagination ul>li.active>a{border-color:#fff}.footable>tfoot .pagination ul>li:first-child>a,.footable>tfoot .pagination ul>li:last-child>a,.footable>tfoot .pagination ul>li:first-child>span,.footable>tfoot .pagination ul>li:last-child>span{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.footable.metro-red{border-color:#fa3031}.footable.metro-red>tfoot>tr>th,.footable.metro-red>thead>tr>th,.footable.metro-red>tfoot>tr>td,.footable.metro-red>thead>tr>td{background-color:#fa3031;border-color:#fa3031}.footable.metro-purple{border-color:#932ab6}.footable.metro-purple>tfoot>tr>th,.footable.metro-purple>thead>tr>th,.footable.metro-purple>tfoot>tr>td,.footable.metro-purple>thead>tr>td{background-color:#932ab6;border-color:#932ab6}.footable.metro-green{border-color:#43c83c}.footable.metro-green>tfoot>tr>th,.footable.metro-green>thead>tr>th,.footable.metro-green>tfoot>tr>td,.footable.metro-green>thead>tr>td{background-color:#43c83c;border-color:#43c83c}.footable.metro-blue{border-color:#1171a3}.footable.metro-blue>tfoot>tr>th,.footable.metro-blue>thead>tr>th,.footable.metro-blue>tfoot>tr>td,.footable.metro-blue>thead>tr>td{background-color:#1171a3;border-color:#1171a3}.footable-odd{background-color:#f7f7f7}
|
@ -0,0 +1,181 @@
|
||||
.footable {
|
||||
border-collapse: separate;
|
||||
border-spacing: 0;
|
||||
border: 1px solid #cccccc;
|
||||
-moz-border-radius: 6px;
|
||||
-webkit-border-radius: 6px;
|
||||
border-radius: 6px;
|
||||
font-family: 'trebuchet MS', 'Lucida sans', Arial;
|
||||
font-size: 14px;
|
||||
color: #444444;
|
||||
background: #ffffff;
|
||||
}
|
||||
.footable > thead > tr:first-child > th.footable-first-column,
|
||||
.footable > thead > tr:first-child > td.footable-first-column {
|
||||
-moz-border-radius: 6px 0 0 0;
|
||||
-webkit-border-radius: 6px 0 0 0;
|
||||
border-radius: 6px 0 0 0;
|
||||
}
|
||||
.footable > thead > tr:first-child > th.footable-last-column,
|
||||
.footable > thead > tr:first-child > td.footable-last-column {
|
||||
-moz-border-radius: 0 6px 0 0;
|
||||
-webkit-border-radius: 0 6px 0 0;
|
||||
border-radius: 0 6px 0 0;
|
||||
}
|
||||
.footable > thead > tr:first-child > th.footable-first-column.footable-last-column,
|
||||
.footable > thead > tr:first-child > td.footable-first-column.footable-last-column {
|
||||
-moz-border-radius: 6px 6px 0 0;
|
||||
-webkit-border-radius: 6px 6px 0 0;
|
||||
border-radius: 6px 6px 0 0;
|
||||
}
|
||||
.footable > thead > tr > th {
|
||||
border-left: 1px solid #cccccc;
|
||||
border-top: 1px solid #cccccc;
|
||||
padding: 10px;
|
||||
text-align: left;
|
||||
}
|
||||
.footable > thead > tr > th,
|
||||
.footable > thead > tr > td {
|
||||
background-color: #dce9f9;
|
||||
background-image: -webkit-gradient(linear, left top, left bottom, from(#ebf3fc), to(#dce9f9));
|
||||
background-image: -webkit-linear-gradient(top, #ebf3fc, #dce9f9);
|
||||
background-image: -moz-linear-gradient(top, #ebf3fc, #dce9f9);
|
||||
background-image: -ms-linear-gradient(top, #ebf3fc, #dce9f9);
|
||||
background-image: -o-linear-gradient(top, #ebf3fc, #dce9f9);
|
||||
background-image: linear-gradient(to bottom, #ebf3fc, #dce9f9);
|
||||
-webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
|
||||
-moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
|
||||
box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
|
||||
border-top: none;
|
||||
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
|
||||
}
|
||||
.footable > thead > tr > th.footable-first-column,
|
||||
.footable > thead > tr > td.footable-first-column {
|
||||
border-left: none;
|
||||
}
|
||||
.footable.breakpoint > tbody > tr.footable-row-detail {
|
||||
background: #eeeeee;
|
||||
}
|
||||
.footable.breakpoint > tbody > tr.footable-row-detail > .footable-row-detail-cell {
|
||||
border-left: none;
|
||||
}
|
||||
.footable > tbody img {
|
||||
vertical-align: middle;
|
||||
}
|
||||
.footable > tbody > tr:hover {
|
||||
background: #fbf8e9;
|
||||
}
|
||||
.footable > tbody > tr:last-child > td.footable-first-column {
|
||||
-moz-border-radius: 0 0 0 6px;
|
||||
-webkit-border-radius: 0 0 0 6px;
|
||||
border-radius: 0 0 0 6px;
|
||||
}
|
||||
.footable > tbody > tr:last-child > td.footable-last-column {
|
||||
-moz-border-radius: 0 0 6px 0;
|
||||
-webkit-border-radius: 0 0 6px 0;
|
||||
border-radius: 0 0 6px 0;
|
||||
}
|
||||
.footable > tbody > tr:last-child > td.footable-first-column.footable-last-column {
|
||||
-moz-border-radius: 0 0 6px 6px;
|
||||
-webkit-border-radius: 0 0 6px 6px;
|
||||
border-radius: 0 0 6px 6px;
|
||||
}
|
||||
.footable > tbody > tr > td {
|
||||
border-top: 1px solid #cccccc;
|
||||
border-left: 1px solid #cccccc;
|
||||
padding: 10px;
|
||||
text-align: left;
|
||||
}
|
||||
.footable > tbody > tr > td.footable-first-column {
|
||||
border-left: none;
|
||||
}
|
||||
.footable > tfoot > tr > th,
|
||||
.footable > tfoot > tr > td {
|
||||
background-color: #dce9f9;
|
||||
background-image: -webkit-gradient(linear, left top, left bottom, from(#ebf3fc), to(#dce9f9));
|
||||
background-image: -webkit-linear-gradient(top, #ebf3fc, #dce9f9);
|
||||
background-image: -moz-linear-gradient(top, #ebf3fc, #dce9f9);
|
||||
background-image: -ms-linear-gradient(top, #ebf3fc, #dce9f9);
|
||||
background-image: -o-linear-gradient(top, #ebf3fc, #dce9f9);
|
||||
background-image: linear-gradient(to bottom, #ebf3fc, #dce9f9);
|
||||
-webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
|
||||
-moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
|
||||
box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
|
||||
border-top: 1px solid #cccccc;
|
||||
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
|
||||
padding: 10px;
|
||||
}
|
||||
.footable .pagination {
|
||||
margin: 20px 0;
|
||||
}
|
||||
.footable .pagination > ul {
|
||||
display: inline-block;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
-moz-border-radius: 6px;
|
||||
-webkit-border-radius: 6px;
|
||||
border-radius: 6px;
|
||||
-webkit-box-shadow: none;
|
||||
-moz-box-shadow: none;
|
||||
box-shadow: none;
|
||||
background-color: #ffffff;
|
||||
}
|
||||
.footable .pagination > ul > li {
|
||||
display: inline;
|
||||
}
|
||||
.footable .pagination > ul > li > a,
|
||||
.footable .pagination > ul > li > span {
|
||||
float: left;
|
||||
padding: 4px 12px;
|
||||
line-height: 20px;
|
||||
text-decoration: none;
|
||||
border: 1px solid #cccccc;
|
||||
border-left-width: 0;
|
||||
}
|
||||
.footable .pagination > ul > li:first-child > a,
|
||||
.footable .pagination > ul > li:first-child > span {
|
||||
-webkit-border-bottom-left-radius: 4px;
|
||||
-moz-border-radius-bottomleft: 4px;
|
||||
border-bottom-left-radius: 4px;
|
||||
-webkit-border-top-left-radius: 4px;
|
||||
-moz-border-radius-topleft: 4px;
|
||||
border-top-left-radius: 4px;
|
||||
border-left-width: 1px;
|
||||
}
|
||||
.footable .pagination > ul > li:last-child > a,
|
||||
.footable .pagination > ul > li:last-child > span {
|
||||
-webkit-border-top-right-radius: 4px;
|
||||
-moz-border-radius-topright: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
-webkit-border-bottom-right-radius: 4px;
|
||||
-moz-border-radius-bottomright: 4px;
|
||||
border-bottom-right-radius: 4px;
|
||||
}
|
||||
.footable .pagination > ul > li > a:hover,
|
||||
.footable .pagination > ul > li > a:focus,
|
||||
.footable .pagination > ul > .active > a,
|
||||
.footable .pagination > ul > .active > span {
|
||||
background-color: #eeeeee;
|
||||
}
|
||||
.footable .pagination > ul > .active > a,
|
||||
.footable .pagination > ul > .active > span {
|
||||
color: #444444;
|
||||
cursor: default;
|
||||
}
|
||||
.footable .pagination > ul > .disabled > span,
|
||||
.footable .pagination > ul > .disabled > a,
|
||||
.footable .pagination > ul > .disabled > a:hover,
|
||||
.footable .pagination > ul > .disabled > a:focus {
|
||||
color: #cccccc;
|
||||
cursor: default;
|
||||
background-color: #ebf3fc;
|
||||
}
|
||||
.footable .pagination.pagination-centered {
|
||||
text-align: center;
|
||||
}
|
||||
.footable .pagination.pagination-right {
|
||||
text-align: center;
|
||||
}
|
||||
.footable-odd {
|
||||
background-color: #f7f7f7;
|
||||
}
|
@ -0,0 +1 @@
|
||||
.footable{border-collapse:separate;border-spacing:0;border:1px solid #ccc;-moz-border-radius:6px;-webkit-border-radius:6px;border-radius:6px;font-family:'trebuchet MS','Lucida sans',Arial;font-size:14px;color:#444;background:#fff}.footable>thead>tr:first-child>th.footable-first-column,.footable>thead>tr:first-child>td.footable-first-column{-moz-border-radius:6px 0 0 0;-webkit-border-radius:6px 0 0 0;border-radius:6px 0 0 0}.footable>thead>tr:first-child>th.footable-last-column,.footable>thead>tr:first-child>td.footable-last-column{-moz-border-radius:0 6px 0 0;-webkit-border-radius:0 6px 0 0;border-radius:0 6px 0 0}.footable>thead>tr:first-child>th.footable-first-column.footable-last-column,.footable>thead>tr:first-child>td.footable-first-column.footable-last-column{-moz-border-radius:6px 6px 0 0;-webkit-border-radius:6px 6px 0 0;border-radius:6px 6px 0 0}.footable>thead>tr>th{border-left:1px solid #ccc;border-top:1px solid #ccc;padding:10px;text-align:left}.footable>thead>tr>th,.footable>thead>tr>td{background-color:#dce9f9;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebf3fc),to(#dce9f9));background-image:-webkit-linear-gradient(top,#ebf3fc,#dce9f9);background-image:-moz-linear-gradient(top,#ebf3fc,#dce9f9);background-image:-ms-linear-gradient(top,#ebf3fc,#dce9f9);background-image:-o-linear-gradient(top,#ebf3fc,#dce9f9);background-image:linear-gradient(to bottom,#ebf3fc,#dce9f9);-webkit-box-shadow:0 1px 0 rgba(255,255,255,0.8) inset;-moz-box-shadow:0 1px 0 rgba(255,255,255,0.8) inset;box-shadow:0 1px 0 rgba(255,255,255,0.8) inset;border-top:0;text-shadow:0 1px 0 rgba(255,255,255,0.5)}.footable>thead>tr>th.footable-first-column,.footable>thead>tr>td.footable-first-column{border-left:none}.footable.breakpoint>tbody>tr.footable-row-detail{background:#eee}.footable.breakpoint>tbody>tr.footable-row-detail>.footable-row-detail-cell{border-left:none}.footable>tbody img{vertical-align:middle}.footable>tbody>tr:hover{background:#fbf8e9}.footable>tbody>tr:last-child>td.footable-first-column{-moz-border-radius:0 0 0 6px;-webkit-border-radius:0 0 0 6px;border-radius:0 0 0 6px}.footable>tbody>tr:last-child>td.footable-last-column{-moz-border-radius:0 0 6px 0;-webkit-border-radius:0 0 6px 0;border-radius:0 0 6px 0}.footable>tbody>tr:last-child>td.footable-first-column.footable-last-column{-moz-border-radius:0 0 6px 6px;-webkit-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.footable>tbody>tr>td{border-top:1px solid #ccc;border-left:1px solid #ccc;padding:10px;text-align:left}.footable>tbody>tr>td.footable-first-column{border-left:none}.footable>tfoot>tr>th,.footable>tfoot>tr>td{background-color:#dce9f9;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebf3fc),to(#dce9f9));background-image:-webkit-linear-gradient(top,#ebf3fc,#dce9f9);background-image:-moz-linear-gradient(top,#ebf3fc,#dce9f9);background-image:-ms-linear-gradient(top,#ebf3fc,#dce9f9);background-image:-o-linear-gradient(top,#ebf3fc,#dce9f9);background-image:linear-gradient(to bottom,#ebf3fc,#dce9f9);-webkit-box-shadow:0 1px 0 rgba(255,255,255,0.8) inset;-moz-box-shadow:0 1px 0 rgba(255,255,255,0.8) inset;box-shadow:0 1px 0 rgba(255,255,255,0.8) inset;border-top:1px solid #ccc;text-shadow:0 1px 0 rgba(255,255,255,0.5);padding:10px}.footable .pagination{margin:20px 0}.footable .pagination>ul{display:inline-block;margin:0;padding:0;-moz-border-radius:6px;-webkit-border-radius:6px;border-radius:6px;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;background-color:#fff}.footable .pagination>ul>li{display:inline}.footable .pagination>ul>li>a,.footable .pagination>ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;border:1px solid #ccc;border-left-width:0}.footable .pagination>ul>li:first-child>a,.footable .pagination>ul>li:first-child>span{-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;border-left-width:1px}.footable .pagination>ul>li:last-child>a,.footable .pagination>ul>li:last-child>span{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}.footable .pagination>ul>li>a:hover,.footable .pagination>ul>li>a:focus,.footable .pagination>ul>.active>a,.footable .pagination>ul>.active>span{background-color:#eee}.footable .pagination>ul>.active>a,.footable .pagination>ul>.active>span{color:#444;cursor:default}.footable .pagination>ul>.disabled>span,.footable .pagination>ul>.disabled>a,.footable .pagination>ul>.disabled>a:hover,.footable .pagination>ul>.disabled>a:focus{color:#ccc;cursor:default;background-color:#ebf3fc}.footable .pagination.pagination-centered{text-align:center}.footable .pagination.pagination-right{text-align:center}.footable-odd{background-color:#f7f7f7}
|
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
14
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.all.min.js
vendored
Normal file
14
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.all.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@
|
||||
(function(t,e,undefined){function a(t,e){e=e?e:location.hash;var a=RegExp("&"+t+"(?:=([^&]*))?(?=&|$)","i");return(e=e.replace(/^\#/,"&").match(a))?e[1]===undefined?"":decodeURIComponent(e[1]):undefined}function i(e,a){var i=t(e.table).find("tbody").find("tr:not(.footable-row-detail, .footable-filtered)").length;t(e.table).data("status_num_total",i);var o=t(e.table).find("tbody").find("tr:not(.footable-row-detail)").filter(":visible").length;t(e.table).data("status_num_shown",o);var n=t(e.table).data("sorted"),r=t(e.table).find("th")[n],l=t(r).hasClass("footable-sorted-desc");if(t(e.table).data("status_descending",l),e.pageInfo){var s=e.pageInfo.currentPage;t(e.table).data("status_pagenum",s)}var d="",f=t(e.table).data("filter");t(f).length&&(d=t(f).val()),t(e.table).data("status_filter_val",d);var u,p,c;if("footable_row_expanded"==a.type&&(u=a.row,u&&(p=t(e.table).data("expanded_rows"),c=[],p&&(c=p.split(",")),c.push(u.rowIndex),t(e.table).data("expanded_rows",c.join(",")))),"footable_row_collapsed"==a.type&&(u=a.row)){p=t(e.table).data("expanded_rows"),c=[],p&&(c=p.split(","));var g=[];for(var b in c)if(c[b]==u.rowIndex){g=c.splice(b,1);break}t(e.table).data("expanded_rows",g.join(","))}}function o(){var e=this;e.name="Footable LucidBookmarkable",e.init=function(e){e.options.bookmarkable.enabled&&t(e.table).bind({footable_initialized:function(){var i=e.table.id,o=a(i+"_f"),n=a(i+"_p"),r=a(i+"_s"),l=a(i+"_d"),s=a(i+"_e");if(o){var d=t(e.table).data("filter");t(d).val(o),t(e.table).trigger("footable_filter",{filter:o})}if(n&&t(e.table).data("currentPage",n),r!==undefined){var f=t(e.table).data("footable-sort"),u=!0;"true"==l&&(u=!1),f.doSort(r,u)}else t(e.table).trigger("footable_setup_paging");if(s){var p=s.split(",");for(var c in p){var g=t(e.table.rows[p[c]]);g.find("> td:first").trigger("footable_toggle_row")}}e.lucid_bookmark_read=!0},"footable_page_filled footable_redrawn footable_filtered footable_sorted footable_row_expanded footable_row_collapsed":function(a){if(i(e,a),e.lucid_bookmark_read){var o=e.table.id,n=o+"_f",r=o+"_p",l=o+"_s",s=o+"_d",d=o+"_e",f=location.hash.replace(/^\#/,"&"),u=[n,r,l,s,d];for(var p in u){var c=RegExp("&"+u[p]+"=([^&]*)","g");f=f.replace(c,"")}var g={};g[n]=t(e.table).data("status_filter_val"),g[r]=t(e.table).data("status_pagenum"),g[l]=t(e.table).data("sorted"),g[s]=t(e.table).data("status_descending"),g[d]=t(e.table).data("expanded_rows");var b=[];for(var h in g)g[h]!==undefined&&b.push(h+"="+encodeURIComponent(g[h]));f.length&&b.push(f),location.hash=b.join("&")}}})}}if(e.footable===undefined||null===e.foobox)throw Error("Please check and make sure footable.js is included in the page and is loaded prior to this script.");var n={bookmarkable:{enabled:!1}};e.footable.plugins.register(o,n)})(jQuery,window);
|
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.filter.min.js
vendored
Normal file
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.filter.min.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
(function(t,e,undefined){function a(){var e=this;e.name="Footable Filter",e.init=function(a){if(e.footable=a,a.options.filter.enabled===!0){if(t(a.table).data("filter")===!1)return;a.timers.register("filter"),t(a.table).unbind(".filtering").bind({"footable_initialized.filtering":function(){var i=t(a.table),o={input:i.data("filter")||a.options.filter.input,timeout:i.data("filter-timeout")||a.options.filter.timeout,minimum:i.data("filter-minimum")||a.options.filter.minimum,disableEnter:i.data("filter-disable-enter")||a.options.filter.disableEnter};o.disableEnter&&t(o.input).keypress(function(t){return window.event?13!==window.event.keyCode:13!==t.which}),i.bind("footable_clear_filter",function(){t(o.input).val(""),e.clearFilter()}),i.bind("footable_filter",function(t,a){e.filter(a.filter)}),t(o.input).keyup(function(i){a.timers.filter.stop(),27===i.which&&t(o.input).val(""),a.timers.filter.start(function(){var a=t(o.input).val()||"";e.filter(a)},o.timeout)})},"footable_redrawn.filtering":function(){var i=t(a.table),o=i.data("filter-string");o&&e.filter(o)}}).data("footable-filter",e)}},e.filter=function(a){var i=e.footable,o=t(i.table),n=o.data("filter-minimum")||i.options.filter.minimum,r=!a,l=i.raise("footable_filtering",{filter:a,clear:r});if(!(l&&l.result===!1||l.filter&&n>l.filter.length))if(l.clear)e.clearFilter();else{var d=l.filter.split(" ");o.find("> tbody > tr").hide().addClass("footable-filtered");var s=o.find("> tbody > tr:not(.footable-row-detail)");t.each(d,function(t,e){e&&e.length>0&&(o.data("current-filter",e),s=s.filter(i.options.filter.filterFunction))}),s.each(function(){e.showRow(this,i),t(this).removeClass("footable-filtered")}),o.data("filter-string",l.filter),i.raise("footable_filtered",{filter:l.filter,clear:!1})}},e.clearFilter=function(){var a=e.footable,i=t(a.table);i.find("> tbody > tr:not(.footable-row-detail)").removeClass("footable-filtered").each(function(){e.showRow(this,a)}),i.removeData("filter-string"),a.raise("footable_filtered",{clear:!0})},e.showRow=function(e,a){var i=t(e),o=i.next(),n=t(a.table);i.is(":visible")||(n.hasClass("breakpoint")&&i.hasClass("footable-detail-show")&&o.hasClass("footable-row-detail")?(i.add(o).show(),a.createOrUpdateDetailRow(e)):i.show())}}if(e.footable===undefined||null===e.footable)throw Error("Please check and make sure footable.js is included in the page and is loaded prior to this script.");var i={filter:{enabled:!0,input:".footable-filter",timeout:300,minimum:2,disableEnter:!1,filterFunction:function(){var e=t(this),a=e.parents("table:first"),i=a.data("current-filter").toUpperCase(),o=e.find("td").text();return a.data("filter-text-only")||e.find("td[data-value]").each(function(){o+=t(this).data("value")}),o.toUpperCase().indexOf(i)>=0}}};e.footable.plugins.register(a,i)})(jQuery,window);
|
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.grid.min.js
vendored
Normal file
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.grid.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
14
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.min.js
vendored
Normal file
14
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.paginate.min.js
vendored
Normal file
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.paginate.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.sort.min.js
vendored
Normal file
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.sort.min.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
(function(t,e,undefined){function a(){var e=this;e.name="Footable Sortable",e.init=function(a){e.footable=a,a.options.sort===!0&&t(a.table).unbind(".sorting").bind({"footable_initialized.sorting":function(){var i,o,n=t(a.table),r=(n.find("> tbody"),a.options.classes.sort);if(n.data("sort")!==!1){n.find("> thead > tr:last-child > th, > thead > tr:last-child > td").each(function(){var e=t(this),i=a.columns[e.index()];i.sort.ignore===!0||e.hasClass(r.sortable)||(e.addClass(r.sortable),t("<span />").addClass(r.indicator).appendTo(e))}),n.find("> thead > tr:last-child > th."+r.sortable+", > thead > tr:last-child > td."+r.sortable).unbind("click.footable").bind("click.footable",function(a){a.preventDefault(),o=t(this);var i=!o.hasClass(r.sorted);return e.doSort(o.index(),i),!1});var l=!1;for(var s in a.columns)if(i=a.columns[s],i.sort.initial){var d="descending"!==i.sort.initial;e.doSort(i.index,d);break}l&&a.bindToggleSelectors()}},"footable_redrawn.sorting":function(){var i=t(a.table),o=a.options.classes.sort;i.data("sorted")>=0&&i.find("> thead > tr:last-child > th").each(function(a){var i=t(this);return i.hasClass(o.sorted)||i.hasClass(o.descending)?(e.doSort(a),undefined):undefined})},"footable_column_data.sorting":function(e){var a=t(e.column.th);e.column.data.sort=e.column.data.sort||{},e.column.data.sort.initial=a.data("sort-initial")||!1,e.column.data.sort.ignore=a.data("sort-ignore")||!1,e.column.data.sort.selector=a.data("sort-selector")||null;var i=a.data("sort-match")||0;i>=e.column.data.matches.length&&(i=0),e.column.data.sort.match=e.column.data.matches[i]}}).data("footable-sort",e)},e.doSort=function(a,i){var o=e.footable;if(t(o.table).data("sort")!==!1){var n=t(o.table),r=n.find("> tbody"),l=o.columns[a],s=n.find("> thead > tr:last-child > th:eq("+a+")"),d=o.options.classes.sort,f=o.options.events.sort;if(i=i===undefined?s.hasClass(d.sorted):"toggle"===i?!s.hasClass(d.sorted):i,l.sort.ignore===!0)return!0;var u=o.raise(f.sorting,{column:l,direction:i?"ASC":"DESC"});u&&u.result===!1||(n.data("sorted",l.index),n.find("> thead > tr:last-child > th, > thead > tr:last-child > td").not(s).removeClass(d.sorted+" "+d.descending),i===undefined&&(i=s.hasClass(d.sorted)),i?s.removeClass(d.descending).addClass(d.sorted):s.removeClass(d.sorted).addClass(d.descending),e.sort(o,r,l,i),o.bindToggleSelectors(),o.raise(f.sorted,{column:l,direction:i?"ASC":"DESC"}))}},e.rows=function(e,a,i){var o=[];return a.find("> tr").each(function(){var a=t(this),n=null;if(a.hasClass(e.options.classes.detail))return!0;a.next().hasClass(e.options.classes.detail)&&(n=a.next().get(0));var r={row:a,detail:n};return i!==undefined&&(r.value=e.parse(this.cells[i.sort.match],i)),o.push(r),!0}).detach(),o},e.sort=function(t,a,i,o){var n=e.rows(t,a,i),r=t.options.sorters[i.type]||t.options.sorters.alpha;n.sort(function(t,e){return o?r(t.value,e.value):r(e.value,t.value)});for(var l=0;n.length>l;l++)a.append(n[l].row),null!==n[l].detail&&a.append(n[l].detail)}}if(e.footable===undefined||null===e.footable)throw Error("Please check and make sure footable.js is included in the page and is loaded prior to this script.");var i={sort:!0,sorters:{alpha:function(t,e){return"string"==typeof t&&(t=t.toLowerCase()),"string"==typeof e&&(e=e.toLowerCase()),t===e?0:e>t?-1:1},numeric:function(t,e){return t-e}},classes:{sort:{sortable:"footable-sortable",sorted:"footable-sorted",descending:"footable-sorted-desc",indicator:"footable-sort-indicator"}},events:{sort:{sorting:"footable_sorting",sorted:"footable_sorted"}}};e.footable.plugins.register(a,i)})(jQuery,window);
|
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.striping.min.js
vendored
Normal file
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/footable.striping.min.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
(function(t,e,undefined){function a(){var e=this;e.name="Footable Striping",e.init=function(a){e.footable=a,t(a.table).unbind("striping").bind({"footable_initialized.striping footable_row_removed.striping footable_redrawn.striping footable_sorted.striping footable_filtered.striping":function(){t(this).data("striping")!==!1&&e.setupStriping(a)}})},e.setupStriping=function(e){var a=0;t(e.table).find("> tbody > tr:not(.footable-row-detail)").each(function(){var i=t(this);i.removeClass(e.options.classes.striping.even).removeClass(e.options.classes.striping.odd),0===a%2?i.addClass(e.options.classes.striping.even):i.addClass(e.options.classes.striping.odd),a++})}}if(e.footable===undefined||null===e.foobox)throw Error("Please check and make sure footable.js is included in the page and is loaded prior to this script.");var i={striping:{enabled:!0},classes:{striping:{odd:"footable-odd",even:"footable-even"}}};e.footable.plugins.register(a,i)})(jQuery,window);
|
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/index.html
vendored
Normal file
1
admin/compiler/com_componentbuilder_v2_1_0__J3/media/footable/dist/index.html
vendored
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
@ -0,0 +1,170 @@
|
||||
(function ($, w, undefined) {
|
||||
if (w.footable === undefined || w.foobox === null)
|
||||
throw new Error('Please check and make sure footable.js is included in the page and is loaded prior to this script.');
|
||||
|
||||
var defaults = {
|
||||
bookmarkable: {
|
||||
enabled: false
|
||||
}
|
||||
};
|
||||
|
||||
// see http://www.onlineaspect.com/2009/06/10/reading-get-variables-with-javascript/
|
||||
function $_HASH(q,s) {
|
||||
s = s ? s : location.hash;
|
||||
var re = new RegExp('&'+q+'(?:=([^&]*))?(?=&|$)','i');
|
||||
return (s=s.replace(/^\#/,'&').match(re)) ? (typeof s[1] == 'undefined' ? '' : decodeURIComponent(s[1])) : undefined;
|
||||
}
|
||||
|
||||
function addFootableStatusData(ft, event) {
|
||||
var tbl_total = $(ft.table).find("tbody").find("tr:not(.footable-row-detail, .footable-filtered)").length;
|
||||
$(ft.table).data("status_num_total", tbl_total);
|
||||
|
||||
var tbl_num = $(ft.table).find("tbody").find("tr:not(.footable-row-detail)").filter(":visible").length;
|
||||
$(ft.table).data("status_num_shown", tbl_num);
|
||||
|
||||
var sort_colnum = $(ft.table).data("sorted");
|
||||
var sort_col = $(ft.table).find("th")[sort_colnum];
|
||||
var descending = $(sort_col).hasClass("footable-sorted-desc");
|
||||
$(ft.table).data("status_descending", descending);
|
||||
|
||||
if (ft.pageInfo) {
|
||||
var pagenum = ft.pageInfo.currentPage;
|
||||
$(ft.table).data("status_pagenum", pagenum);
|
||||
}
|
||||
|
||||
var filter_val = '';
|
||||
var filter_field_id = $(ft.table).data('filter');
|
||||
if ( $(filter_field_id).length ) {
|
||||
filter_val = $(filter_field_id).val();
|
||||
}
|
||||
|
||||
$(ft.table).data("status_filter_val", filter_val);
|
||||
|
||||
// manage expanded or collapsed rows:
|
||||
var row, rowlist, expanded_rows;
|
||||
if (event.type == 'footable_row_expanded') {
|
||||
row = event.row;
|
||||
if (row) {
|
||||
rowlist = $(ft.table).data('expanded_rows');
|
||||
expanded_rows = [];
|
||||
if (rowlist) {
|
||||
expanded_rows = rowlist.split(',');
|
||||
}
|
||||
expanded_rows.push(row.rowIndex);
|
||||
$(ft.table).data('expanded_rows', expanded_rows.join(','));
|
||||
}
|
||||
}
|
||||
if (event.type == 'footable_row_collapsed') {
|
||||
row = event.row;
|
||||
if (row) {
|
||||
rowlist = $(ft.table).data('expanded_rows');
|
||||
expanded_rows = [];
|
||||
if (rowlist) {
|
||||
expanded_rows = rowlist.split(',');
|
||||
}
|
||||
var new_expanded_rows = [];
|
||||
for (var i in expanded_rows) {
|
||||
if (expanded_rows[i] == row.rowIndex) {
|
||||
new_expanded_rows = expanded_rows.splice(i, 1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
$(ft.table).data('expanded_rows', new_expanded_rows.join(','));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function Bookmarkable() {
|
||||
var p = this;
|
||||
p.name = 'Footable LucidBookmarkable';
|
||||
p.init = function(ft) {
|
||||
if (ft.options.bookmarkable.enabled) {
|
||||
|
||||
$(ft.table).bind({
|
||||
'footable_initialized': function(){
|
||||
var tbl_id = ft.table.id;
|
||||
var q_filter = $_HASH(tbl_id + '_f');
|
||||
var q_page_num = $_HASH(tbl_id + '_p');
|
||||
var q_sorted = $_HASH(tbl_id + '_s');
|
||||
var q_desc = $_HASH(tbl_id + '_d');
|
||||
var q_expanded = $_HASH(tbl_id + '_e');
|
||||
|
||||
if (q_filter) {
|
||||
var filter_field_id = $(ft.table).data('filter');
|
||||
$(filter_field_id).val(q_filter);
|
||||
$(ft.table).trigger('footable_filter', {filter: q_filter});
|
||||
}
|
||||
if (q_page_num) {
|
||||
$(ft.table).data('currentPage', q_page_num);
|
||||
// we'll check for sort before triggering pagination, since
|
||||
// sorting triggers pagination.
|
||||
}
|
||||
if (typeof q_sorted !== 'undefined') {
|
||||
var footableSort = $(ft.table).data('footable-sort');
|
||||
var ascending = true;
|
||||
if (q_desc == 'true') {
|
||||
ascending = false;
|
||||
}
|
||||
footableSort.doSort(q_sorted, ascending);
|
||||
}
|
||||
else {
|
||||
$(ft.table).trigger('footable_setup_paging');
|
||||
}
|
||||
if (q_expanded) {
|
||||
var expanded_rows = q_expanded.split(',');
|
||||
for (var i in expanded_rows) {
|
||||
var row = $(ft.table.rows[expanded_rows[i]]);
|
||||
row.find('> td:first').trigger('footable_toggle_row');
|
||||
}
|
||||
}
|
||||
ft.lucid_bookmark_read = true;
|
||||
},
|
||||
'footable_page_filled footable_redrawn footable_filtered footable_sorted footable_row_expanded footable_row_collapsed': function(e) {
|
||||
addFootableStatusData(ft, e);
|
||||
|
||||
// update the URL hash
|
||||
// lucid_bookmark_read guards against running this logic before
|
||||
// the "first read" of the location bookmark hash.
|
||||
if (ft.lucid_bookmark_read) {
|
||||
var tbl_id = ft.table.id;
|
||||
var filter = tbl_id + '_f';
|
||||
var page_num = tbl_id + '_p';
|
||||
var sorted = tbl_id + '_s';
|
||||
var descending = tbl_id + '_d';
|
||||
var expanded = tbl_id + '_e';
|
||||
|
||||
var hash = location.hash.replace(/^\#/, '&');
|
||||
var hashkeys = [filter, page_num, sorted, descending, expanded];
|
||||
// trim existing elements out of the hash.
|
||||
for (var i in hashkeys) {
|
||||
var re = new RegExp('&' + hashkeys[i]+'=([^&]*)', 'g');
|
||||
hash = hash.replace(re, '');
|
||||
}
|
||||
|
||||
var foostate = {};
|
||||
foostate[filter] = $(ft.table).data('status_filter_val');
|
||||
foostate[page_num] = $(ft.table).data('status_pagenum');
|
||||
foostate[sorted] = $(ft.table).data('sorted');
|
||||
foostate[descending] = $(ft.table).data('status_descending');
|
||||
foostate[expanded] = $(ft.table).data('expanded_rows');
|
||||
|
||||
var pairs = [];
|
||||
for (var elt in foostate) {
|
||||
if (foostate[elt] !== undefined) {
|
||||
pairs.push(elt + '=' + encodeURIComponent(foostate[elt]));
|
||||
}
|
||||
}
|
||||
if (hash.length) {
|
||||
pairs.push(hash);
|
||||
}
|
||||
location.hash = pairs.join('&');
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
w.footable.plugins.register(Bookmarkable, defaults);
|
||||
|
||||
})(jQuery, window);
|
@ -0,0 +1,143 @@
|
||||
(function ($, w, undefined) {
|
||||
if (w.footable === undefined || w.footable === null)
|
||||
throw new Error('Please check and make sure footable.js is included in the page and is loaded prior to this script.');
|
||||
|
||||
var defaults = {
|
||||
filter: {
|
||||
enabled: true,
|
||||
input: '.footable-filter',
|
||||
timeout: 300,
|
||||
minimum: 2,
|
||||
disableEnter: false,
|
||||
filterFunction: function(index) {
|
||||
var $t = $(this),
|
||||
$table = $t.parents('table:first'),
|
||||
filter = $table.data('current-filter').toUpperCase(),
|
||||
text = $t.find('td').text();
|
||||
if (!$table.data('filter-text-only')) {
|
||||
$t.find('td[data-value]').each(function () {
|
||||
text += $(this).data('value');
|
||||
});
|
||||
}
|
||||
return text.toUpperCase().indexOf(filter) >= 0;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
function Filter() {
|
||||
var p = this;
|
||||
p.name = 'Footable Filter';
|
||||
p.init = function (ft) {
|
||||
p.footable = ft;
|
||||
if (ft.options.filter.enabled === true) {
|
||||
if ($(ft.table).data('filter') === false) return;
|
||||
ft.timers.register('filter');
|
||||
$(ft.table)
|
||||
.unbind('.filtering')
|
||||
.bind({
|
||||
'footable_initialized.filtering': function (e) {
|
||||
var $table = $(ft.table);
|
||||
var data = {
|
||||
'input': $table.data('filter') || ft.options.filter.input,
|
||||
'timeout': $table.data('filter-timeout') || ft.options.filter.timeout,
|
||||
'minimum': $table.data('filter-minimum') || ft.options.filter.minimum,
|
||||
'disableEnter': $table.data('filter-disable-enter') || ft.options.filter.disableEnter
|
||||
};
|
||||
if (data.disableEnter) {
|
||||
$(data.input).keypress(function (event) {
|
||||
if (window.event)
|
||||
return (window.event.keyCode !== 13);
|
||||
else
|
||||
return (event.which !== 13);
|
||||
});
|
||||
}
|
||||
$table.bind('footable_clear_filter', function () {
|
||||
$(data.input).val('');
|
||||
p.clearFilter();
|
||||
});
|
||||
$table.bind('footable_filter', function (event, args) {
|
||||
p.filter(args.filter);
|
||||
});
|
||||
$(data.input).keyup(function (eve) {
|
||||
ft.timers.filter.stop();
|
||||
if (eve.which === 27) {
|
||||
$(data.input).val('');
|
||||
}
|
||||
ft.timers.filter.start(function () {
|
||||
var val = $(data.input).val() || '';
|
||||
p.filter(val);
|
||||
}, data.timeout);
|
||||
});
|
||||
},
|
||||
'footable_redrawn.filtering': function (e) {
|
||||
var $table = $(ft.table),
|
||||
filter = $table.data('filter-string');
|
||||
if (filter) {
|
||||
p.filter(filter);
|
||||
}
|
||||
}
|
||||
})
|
||||
//save the filter object onto the table so we can access it later
|
||||
.data('footable-filter', p);
|
||||
}
|
||||
};
|
||||
|
||||
p.filter = function (filterString) {
|
||||
var ft = p.footable,
|
||||
$table = $(ft.table),
|
||||
minimum = $table.data('filter-minimum') || ft.options.filter.minimum,
|
||||
clear = !filterString;
|
||||
|
||||
//raise a pre-filter event so that we can cancel the filtering if needed
|
||||
var event = ft.raise('footable_filtering', { filter: filterString, clear: clear });
|
||||
if (event && event.result === false) return;
|
||||
if (event.filter && event.filter.length < minimum) {
|
||||
return; //if we do not have the minimum chars then do nothing
|
||||
}
|
||||
|
||||
if (event.clear) {
|
||||
p.clearFilter();
|
||||
} else {
|
||||
var filters = event.filter.split(' ');
|
||||
|
||||
$table.find('> tbody > tr').hide().addClass('footable-filtered');
|
||||
var rows = $table.find('> tbody > tr:not(.footable-row-detail)');
|
||||
$.each(filters, function (i, f) {
|
||||
if (f && f.length > 0) {
|
||||
$table.data('current-filter', f);
|
||||
rows = rows.filter(ft.options.filter.filterFunction);
|
||||
}
|
||||
});
|
||||
rows.each(function () {
|
||||
p.showRow(this, ft);
|
||||
$(this).removeClass('footable-filtered');
|
||||
});
|
||||
$table.data('filter-string', event.filter);
|
||||
ft.raise('footable_filtered', { filter: event.filter, clear: false });
|
||||
}
|
||||
};
|
||||
|
||||
p.clearFilter = function () {
|
||||
var ft = p.footable,
|
||||
$table = $(ft.table);
|
||||
|
||||
$table.find('> tbody > tr:not(.footable-row-detail)').removeClass('footable-filtered').each(function () {
|
||||
p.showRow(this, ft);
|
||||
});
|
||||
$table.removeData('filter-string');
|
||||
ft.raise('footable_filtered', { clear: true });
|
||||
};
|
||||
|
||||
p.showRow = function (row, ft) {
|
||||
var $row = $(row), $next = $row.next(), $table = $(ft.table);
|
||||
if ($table.hasClass('breakpoint') && $row.hasClass('footable-detail-show') && $next.hasClass('footable-row-detail')) {
|
||||
$row.add($next).show();
|
||||
ft.createOrUpdateDetailRow(row);
|
||||
}
|
||||
else $row.show();
|
||||
};
|
||||
}
|
||||
|
||||
w.footable.plugins.register(Filter, defaults);
|
||||
|
||||
})(jQuery, window);
|
@ -0,0 +1,373 @@
|
||||
(function($, w, undefined) {
|
||||
if (w.footable === undefined || w.foobox === null) throw new Error('Please check and make sure footable.js is included in the page and is loaded prior to this script.');
|
||||
var defaults = {
|
||||
grid: {
|
||||
enabled: true,
|
||||
data: null,
|
||||
template: null, //row html template, use for make a row.
|
||||
cols: null, //column define
|
||||
items: null, //data items
|
||||
url: null, //get data from url
|
||||
ajax: null, //paramater for $.ajax
|
||||
activeClass: 'active', //add to row selected
|
||||
multiSelect: false, //allow select multiple row
|
||||
showIndex: false, //show row index
|
||||
showCheckbox: false, //show checkbox for select
|
||||
showEmptyInfo: false, //when that is not data in table, show a info to notify user
|
||||
emptyInfo: '<p class="text-center text-warning">No Data</p>',
|
||||
pagination: {
|
||||
"page-size": 20,
|
||||
"pagination-class": "pagination pagination-centered"
|
||||
},
|
||||
indexFormatter: function(val, $td, index) {
|
||||
return index + 1;
|
||||
},
|
||||
checkboxFormatter: function(isTop) {
|
||||
return '<input type="checkbox" class="' + (isTop ? 'checkAll' : 'check') + '">';
|
||||
},
|
||||
events: {
|
||||
loaded: 'footable_grid_loaded',
|
||||
created: 'footable_grid_created',
|
||||
removed: 'footable_grid_removed',
|
||||
updated: 'footable_grid_updated'
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
function makeTh(col) {
|
||||
var $th = $('<th>' + col.title + '</th>');
|
||||
if ($.isPlainObject(col.data)) {
|
||||
$th.data(col.data);
|
||||
}
|
||||
if ($.isPlainObject(col.style)) {
|
||||
$th.css(col.style);
|
||||
}
|
||||
if (col.className) {
|
||||
$th.addClass(col.className);
|
||||
}
|
||||
return $th;
|
||||
}
|
||||
|
||||
function initThead($table, options) {
|
||||
var $thead = $table.find('thead');
|
||||
if ($thead.size() === 0) {
|
||||
$thead = $('<thead>').appendTo($table);
|
||||
}
|
||||
var $row = $('<tr>').appendTo($thead);
|
||||
for (var i = 0, len = options.cols.length; i < len; i++) {
|
||||
$row.append(makeTh(options.cols[i]));
|
||||
}
|
||||
}
|
||||
|
||||
function initTBody($table) {
|
||||
var $tbody = $table.find('tbody');
|
||||
if ($tbody.size() === 0) {
|
||||
$tbody = $('<tbody>').appendTo($table);
|
||||
}
|
||||
}
|
||||
|
||||
function initPagination($table, cols, options) {
|
||||
if (options) {
|
||||
$table.attr("data-page-size", options['page-size']);
|
||||
var $tfoot = $table.find('tfoot');
|
||||
if ($tfoot.size() === 0) {
|
||||
$tfoot = $('<tfoot class="hide-if-no-paging"></tfoot>').appendTo($table);
|
||||
}
|
||||
$tfoot.append('<tr><td colspan=' + cols.length + '></td></tr>');
|
||||
var $pagination = $("<div>").appendTo($tfoot.find("tr:last-child td"));
|
||||
$pagination.addClass(options['pagination-class']);
|
||||
}
|
||||
}
|
||||
|
||||
function setToggleColumn(cols) {
|
||||
var toggleColumn = cols[0];
|
||||
for (var i = 0, len = cols.length; i < len; i++) {
|
||||
var col = cols[i];
|
||||
if (col.data && (col.data.toggle === true || col.data.toggle === "true")) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
toggleColumn.data = $.extend(toggleColumn.data, {
|
||||
toggle: true
|
||||
});
|
||||
}
|
||||
|
||||
function makeEmptyInfo($table, cols, emptyInfo) {
|
||||
if ($table.find("tr.emptyInfo").size() === 0) {
|
||||
$table.find('tbody').append('<tr class="emptyInfo"><td colspan="' + cols.length + '">' + emptyInfo + '</td></tr>');
|
||||
}
|
||||
}
|
||||
|
||||
function updateRowIndex($tbody, $newRow, detailClass, offset) {
|
||||
//update rows index
|
||||
$tbody.find('tr:not(.' + detailClass + ')').each(function() {
|
||||
var $row = $(this),
|
||||
index = $newRow.data('index'),
|
||||
oldIndex = parseInt($row.data('index'), 0),
|
||||
newIndex = oldIndex + offset;
|
||||
if (oldIndex >= index && this !== $newRow.get(0)) {
|
||||
$row.attr('data-index', newIndex).data('index', newIndex);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function Grid() {
|
||||
var grid = this;
|
||||
grid.name = 'Footable Grid';
|
||||
grid.init = function(ft) {
|
||||
var toggleClass = ft.options.classes.toggle;
|
||||
var detailClass = ft.options.classes.detail;
|
||||
var options = ft.options.grid;
|
||||
if (!options.cols) return;
|
||||
grid.footable = ft;
|
||||
var $table = $(ft.table);
|
||||
$table.data('grid', grid);
|
||||
if ($.isPlainObject(options.data)) {
|
||||
$table.data(options.data);
|
||||
}
|
||||
grid._items = [];
|
||||
setToggleColumn(options.cols);
|
||||
if (options.showCheckbox) {
|
||||
options.multiSelect = true;
|
||||
options.cols.unshift({
|
||||
title: options.checkboxFormatter(true),
|
||||
name: '',
|
||||
data: {
|
||||
"sort-ignore": true
|
||||
},
|
||||
formatter: options.checkboxFormatter
|
||||
});
|
||||
}
|
||||
if (options.showIndex) {
|
||||
options.cols.unshift({
|
||||
title: '#',
|
||||
name: 'index',
|
||||
data: {
|
||||
"sort-ignore": true
|
||||
},
|
||||
formatter: options.indexFormatter
|
||||
});
|
||||
}
|
||||
initThead($table, options);
|
||||
initTBody($table);
|
||||
initPagination($table, options.cols, options.pagination);
|
||||
$table.off('.grid').on({
|
||||
'footable_initialized.grid': function(e) {
|
||||
if (options.url || options.ajax) {
|
||||
$.ajax(options.ajax || {
|
||||
url: options.url
|
||||
}).then(function(resp) {
|
||||
grid.newItem(resp);
|
||||
ft.raise(options.events.loaded);
|
||||
}, function(jqXHR) {
|
||||
throw 'load data from ' + (options.url || options.ajax.url) + ' fail';
|
||||
});
|
||||
} else {
|
||||
grid.newItem(options.items || []);
|
||||
ft.raise(options.events.loaded);
|
||||
}
|
||||
},
|
||||
'footable_sorted.grid footable_grid_created.grid footable_grid_removed.grid': function(event) {
|
||||
if (options.showIndex && grid.getItem().length > 0) {
|
||||
$table.find('tbody tr:not(.' + detailClass + ')').each(function(index) {
|
||||
var $td = $(this).find('td:first');
|
||||
$td.html(options.indexFormatter(null, $td, index));
|
||||
});
|
||||
}
|
||||
},
|
||||
'footable_redrawn.grid footable_row_removed.grid': function(event) {
|
||||
if (grid.getItem().length === 0 && options.showEmptyInfo) {
|
||||
makeEmptyInfo($table, options.cols, options.emptyInfo);
|
||||
}
|
||||
}
|
||||
}).on({
|
||||
'click.grid': function(event) {
|
||||
if ($(event.target).closest('td').find('>.' + toggleClass).size() > 0) {
|
||||
return true;
|
||||
}
|
||||
var $tr = $(event.currentTarget);
|
||||
if ($tr.hasClass(detailClass)) {
|
||||
return true;
|
||||
}
|
||||
if (!options.multiSelect && !$tr.hasClass(options.activeClass)) {
|
||||
$table.find('tbody tr.' + options.activeClass).removeClass(options.activeClass);
|
||||
}
|
||||
$tr.toggleClass(options.activeClass);
|
||||
if (options.showCheckbox) {
|
||||
$tr.find('input:checkbox.check').prop('checked', function(index, val) {
|
||||
if (event.target === this) {
|
||||
return val;
|
||||
}
|
||||
return !val;
|
||||
});
|
||||
}
|
||||
ft.toggleDetail($tr);
|
||||
}
|
||||
}, 'tbody tr').on('click.grid', 'thead input:checkbox.checkAll', function(event) {
|
||||
var checked = !! event.currentTarget.checked;
|
||||
if (checked) {
|
||||
$table.find('tbody tr').addClass(options.activeClass);
|
||||
} else {
|
||||
$table.find('tbody tr').removeClass(options.activeClass);
|
||||
}
|
||||
$table.find('tbody input:checkbox.check').prop('checked', checked);
|
||||
});
|
||||
};
|
||||
/**
|
||||
* get selected rows index;
|
||||
*/
|
||||
grid.getSelected = function() {
|
||||
var options = grid.footable.options.grid,
|
||||
$selected = $(grid.footable.table).find('tbody>tr.' + options.activeClass);
|
||||
return $selected.map(function() {
|
||||
return $(this).data('index');
|
||||
});
|
||||
};
|
||||
/**
|
||||
* get row's data by index
|
||||
*/
|
||||
grid.getItem = function(index) {
|
||||
if (index !== undefined) {
|
||||
if ($.isArray(index)) {
|
||||
return $.map(index, function(item) {
|
||||
return grid._items[item];
|
||||
});
|
||||
}
|
||||
return grid._items[index];
|
||||
}
|
||||
return grid._items;
|
||||
};
|
||||
|
||||
function makeCell(col, value, index) {
|
||||
var $td = $('<td>');
|
||||
if (col.formatter) {
|
||||
$td.html(col.formatter(value, $td, index));
|
||||
} else {
|
||||
$td.html(value || '');
|
||||
}
|
||||
return $td;
|
||||
}
|
||||
grid._makeRow = function(item, index) {
|
||||
var options = grid.footable.options.grid;
|
||||
var $row;
|
||||
if ($.isFunction(options.template)) {
|
||||
$row = $(options.template($.extend({}, {
|
||||
__index: index
|
||||
}, item)));
|
||||
} else {
|
||||
$row = $('<tr>');
|
||||
for (var i = 0, len = options.cols.length; i < len; i++) {
|
||||
var col = options.cols[i];
|
||||
$row.append(makeCell(col, item[col.name] || '', index));
|
||||
}
|
||||
}
|
||||
$row.attr('data-index', index);
|
||||
return $row;
|
||||
};
|
||||
/**
|
||||
* create rows by js object
|
||||
*/
|
||||
grid.newItem = function(item, index, wait) {
|
||||
var $tbody = $(grid.footable.table).find('tbody');
|
||||
var detailClass = grid.footable.options.classes.detail;
|
||||
$tbody.find('tr.emptyInfo').remove();
|
||||
if ($.isArray(item)) {
|
||||
for (var atom;
|
||||
(atom = item.pop());) {
|
||||
grid.newItem(atom, index, true);
|
||||
}
|
||||
grid.footable.redraw();
|
||||
grid.footable.raise(grid.footable.options.grid.events.created, {
|
||||
item: item,
|
||||
index: index
|
||||
});
|
||||
return;
|
||||
}
|
||||
if (!$.isPlainObject(item)) {
|
||||
return;
|
||||
}
|
||||
var $tr, len = grid._items.length;
|
||||
if (index === undefined || index < 0 || index > len) {
|
||||
$tr = grid._makeRow(item, len++);
|
||||
grid._items.push(item);
|
||||
$tbody.append($tr);
|
||||
} else {
|
||||
$tr = grid._makeRow(item, index);
|
||||
if (index === 0) {
|
||||
grid._items.unshift(item);
|
||||
$tbody.prepend($tr);
|
||||
} else {
|
||||
var $before = $tbody.find('tr[data-index=' + (index - 1) + ']');
|
||||
grid._items.splice(index, 0, item);
|
||||
if ($before.data('detail_created') === true) {
|
||||
$before = $before.next();
|
||||
}
|
||||
$before.after($tr);
|
||||
}
|
||||
updateRowIndex($tbody, $tr, detailClass, 1);
|
||||
}
|
||||
if (!wait) {
|
||||
grid.footable.redraw();
|
||||
grid.footable.raise(grid.footable.options.grid.events.created, {
|
||||
item: item,
|
||||
index: index
|
||||
});
|
||||
}
|
||||
};
|
||||
/**
|
||||
* update row by js object
|
||||
*/
|
||||
grid.setItem = function(item, index) {
|
||||
if (!$.isPlainObject(item)) {
|
||||
return;
|
||||
}
|
||||
var $tbody = $(grid.footable.table).find('tbody'),
|
||||
$newTr = grid._makeRow(item, index);
|
||||
$.extend(grid._items[index], item);
|
||||
var $tr = $tbody.find('tr').eq(index);
|
||||
$tr.html($newTr.html());
|
||||
grid.footable.redraw();
|
||||
grid.footable.raise(grid.footable.options.grid.events.updated, {
|
||||
item: item,
|
||||
index: index
|
||||
});
|
||||
};
|
||||
/**
|
||||
* remove rows by index
|
||||
*/
|
||||
grid.removeItem = function(index) {
|
||||
var $tbody = $(grid.footable.table).find('tbody');
|
||||
var detailClass = grid.footable.options.classes.detail;
|
||||
var result = [];
|
||||
if ($.isArray(index)) {
|
||||
for (var i;
|
||||
(i = index.pop());) {
|
||||
result.push(grid.removeItem(i));
|
||||
}
|
||||
grid.footable.raise(grid.footable.options.grid.events.removed, {
|
||||
item: result,
|
||||
index: index
|
||||
});
|
||||
return result;
|
||||
}
|
||||
if (index === undefined) {
|
||||
$tbody.find('tr').each(function() {
|
||||
result.push(grid._items.shift());
|
||||
grid.footable.removeRow(this);
|
||||
});
|
||||
} else {
|
||||
var $tr = $tbody.find('tr[data-index=' + index + ']');
|
||||
result = grid._items.splice(index, 1)[0];
|
||||
grid.footable.removeRow($tr);
|
||||
//update rows index
|
||||
updateRowIndex($tbody, $tr, detailClass, -1);
|
||||
}
|
||||
grid.footable.raise(grid.footable.options.grid.events.removed, {
|
||||
item: result,
|
||||
index: index
|
||||
});
|
||||
return result;
|
||||
};
|
||||
}
|
||||
w.footable.plugins.register(Grid, defaults);
|
||||
})(jQuery, window);
|
@ -0,0 +1,824 @@
|
||||
/*!
|
||||
* FooTable - Awesome Responsive Tables
|
||||
* Version : 2.0.3
|
||||
* http://fooplugins.com/plugins/footable-jquery/
|
||||
*
|
||||
* Requires jQuery - http://jquery.com/
|
||||
*
|
||||
* Copyright 2014 Steven Usher & Brad Vincent
|
||||
* Released under the MIT license
|
||||
* You are free to use FooTable in commercial projects as long as this copyright header is left intact.
|
||||
*
|
||||
* Date: 11 Nov 2014
|
||||
*/
|
||||
(function ($, w, undefined) {
|
||||
w.footable = {
|
||||
options: {
|
||||
delay: 100, // The number of millseconds to wait before triggering the react event
|
||||
breakpoints: { // The different screen resolution breakpoints
|
||||
phone: 480,
|
||||
tablet: 1024
|
||||
},
|
||||
parsers: { // The default parser to parse the value out of a cell (values are used in building up row detail)
|
||||
alpha: function (cell) {
|
||||
return $(cell).data('value') || $.trim($(cell).text());
|
||||
},
|
||||
numeric: function (cell) {
|
||||
var val = $(cell).data('value') || $(cell).text().replace(/[^0-9.\-]/g, '');
|
||||
val = parseFloat(val);
|
||||
if (isNaN(val)) val = 0;
|
||||
return val;
|
||||
}
|
||||
},
|
||||
addRowToggle: true,
|
||||
calculateWidthOverride: null,
|
||||
toggleSelector: ' > tbody > tr:not(.footable-row-detail)', //the selector to show/hide the detail row
|
||||
columnDataSelector: '> thead > tr:last-child > th, > thead > tr:last-child > td', //the selector used to find the column data in the thead
|
||||
detailSeparator: ':', //the separator character used when building up the detail row
|
||||
toggleHTMLElement: '<span />', // override this if you want to insert a click target rather than use a background image.
|
||||
createGroupedDetail: function (data) {
|
||||
var groups = { '_none': { 'name': null, 'data': [] } };
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
var groupid = data[i].group;
|
||||
if (groupid !== null) {
|
||||
if (!(groupid in groups))
|
||||
groups[groupid] = { 'name': data[i].groupName || data[i].group, 'data': [] };
|
||||
|
||||
groups[groupid].data.push(data[i]);
|
||||
} else {
|
||||
groups._none.data.push(data[i]);
|
||||
}
|
||||
}
|
||||
return groups;
|
||||
},
|
||||
createDetail: function (element, data, createGroupedDetail, separatorChar, classes) {
|
||||
/// <summary>This function is used by FooTable to generate the detail view seen when expanding a collapsed row.</summary>
|
||||
/// <param name="element">This is the div that contains all the detail row information, anything could be added to it.</param>
|
||||
/// <param name="data">
|
||||
/// This is an array of objects containing the cell information for the current row.
|
||||
/// These objects look like the below:
|
||||
/// obj = {
|
||||
/// 'name': String, // The name of the column
|
||||
/// 'value': Object, // The value parsed from the cell using the parsers. This could be a string, a number or whatever the parser outputs.
|
||||
/// 'display': String, // This is the actual HTML from the cell, so if you have images etc you want moved this is the one to use and is the default value used.
|
||||
/// 'group': String, // This is the identifier used in the data-group attribute of the column.
|
||||
/// 'groupName': String // This is the actual name of the group the column belongs to.
|
||||
/// }
|
||||
/// </param>
|
||||
/// <param name="createGroupedDetail">The grouping function to group the data</param>
|
||||
/// <param name="separatorChar">The separator charactor used</param>
|
||||
/// <param name="classes">The array of class names used to build up the detail row</param>
|
||||
|
||||
var groups = createGroupedDetail(data);
|
||||
for (var group in groups) {
|
||||
if (groups[group].data.length === 0) continue;
|
||||
if (group !== '_none') element.append('<div class="' + classes.detailInnerGroup + '">' + groups[group].name + '</div>');
|
||||
|
||||
for (var j = 0; j < groups[group].data.length; j++) {
|
||||
var separator = (groups[group].data[j].name) ? separatorChar : '';
|
||||
element.append($('<div></div>').addClass(classes.detailInnerRow).append($('<div></div>').addClass(classes.detailInnerName)
|
||||
.append(groups[group].data[j].name + separator)).append($('<div></div>').addClass(classes.detailInnerValue)
|
||||
.attr('data-bind-value', groups[group].data[j].bindName).append(groups[group].data[j].display)));
|
||||
}
|
||||
}
|
||||
},
|
||||
classes: {
|
||||
main: 'footable',
|
||||
loading: 'footable-loading',
|
||||
loaded: 'footable-loaded',
|
||||
toggle: 'footable-toggle',
|
||||
disabled: 'footable-disabled',
|
||||
detail: 'footable-row-detail',
|
||||
detailCell: 'footable-row-detail-cell',
|
||||
detailInner: 'footable-row-detail-inner',
|
||||
detailInnerRow: 'footable-row-detail-row',
|
||||
detailInnerGroup: 'footable-row-detail-group',
|
||||
detailInnerName: 'footable-row-detail-name',
|
||||
detailInnerValue: 'footable-row-detail-value',
|
||||
detailShow: 'footable-detail-show'
|
||||
},
|
||||
triggers: {
|
||||
initialize: 'footable_initialize', //trigger this event to force FooTable to reinitialize
|
||||
resize: 'footable_resize', //trigger this event to force FooTable to resize
|
||||
redraw: 'footable_redraw', //trigger this event to force FooTable to redraw
|
||||
toggleRow: 'footable_toggle_row', //trigger this event to force FooTable to toggle a row
|
||||
expandFirstRow: 'footable_expand_first_row', //trigger this event to force FooTable to expand the first row
|
||||
expandAll: 'footable_expand_all', //trigger this event to force FooTable to expand all rows
|
||||
collapseAll: 'footable_collapse_all' //trigger this event to force FooTable to collapse all rows
|
||||
},
|
||||
events: {
|
||||
alreadyInitialized: 'footable_already_initialized', //fires when the FooTable has already been initialized
|
||||
initializing: 'footable_initializing', //fires before FooTable starts initializing
|
||||
initialized: 'footable_initialized', //fires after FooTable has finished initializing
|
||||
resizing: 'footable_resizing', //fires before FooTable resizes
|
||||
resized: 'footable_resized', //fires after FooTable has resized
|
||||
redrawn: 'footable_redrawn', //fires after FooTable has redrawn
|
||||
breakpoint: 'footable_breakpoint', //fires inside the resize function, when a breakpoint is hit
|
||||
columnData: 'footable_column_data', //fires when setting up column data. Plugins should use this event to capture their own info about a column
|
||||
rowDetailUpdating: 'footable_row_detail_updating', //fires before a detail row is updated
|
||||
rowDetailUpdated: 'footable_row_detail_updated', //fires when a detail row is being updated
|
||||
rowCollapsed: 'footable_row_collapsed', //fires when a row is collapsed
|
||||
rowExpanded: 'footable_row_expanded', //fires when a row is expanded
|
||||
rowRemoved: 'footable_row_removed', //fires when a row is removed
|
||||
reset: 'footable_reset' //fires when FooTable is reset
|
||||
},
|
||||
debug: false, // Whether or not to log information to the console.
|
||||
log: null
|
||||
},
|
||||
|
||||
version: {
|
||||
major: 0, minor: 5,
|
||||
toString: function () {
|
||||
return w.footable.version.major + '.' + w.footable.version.minor;
|
||||
},
|
||||
parse: function (str) {
|
||||
var version = /(\d+)\.?(\d+)?\.?(\d+)?/.exec(str);
|
||||
return {
|
||||
major: parseInt(version[1], 10) || 0,
|
||||
minor: parseInt(version[2], 10) || 0,
|
||||
patch: parseInt(version[3], 10) || 0
|
||||
};
|
||||
}
|
||||
},
|
||||
|
||||
plugins: {
|
||||
_validate: function (plugin) {
|
||||
///<summary>Simple validation of the <paramref name="plugin"/> to make sure any members called by FooTable actually exist.</summary>
|
||||
///<param name="plugin">The object defining the plugin, this should implement a string property called "name" and a function called "init".</param>
|
||||
|
||||
if (!$.isFunction(plugin)) {
|
||||
if (w.footable.options.debug === true) console.error('Validation failed, expected type "function", received type "{0}".', typeof plugin);
|
||||
return false;
|
||||
}
|
||||
var p = new plugin();
|
||||
if (typeof p['name'] !== 'string') {
|
||||
if (w.footable.options.debug === true) console.error('Validation failed, plugin does not implement a string property called "name".', p);
|
||||
return false;
|
||||
}
|
||||
if (!$.isFunction(p['init'])) {
|
||||
if (w.footable.options.debug === true) console.error('Validation failed, plugin "' + p['name'] + '" does not implement a function called "init".', p);
|
||||
return false;
|
||||
}
|
||||
if (w.footable.options.debug === true) console.log('Validation succeeded for plugin "' + p['name'] + '".', p);
|
||||
return true;
|
||||
},
|
||||
registered: [], // An array containing all registered plugins.
|
||||
register: function (plugin, options) {
|
||||
///<summary>Registers a <paramref name="plugin"/> and its default <paramref name="options"/> with FooTable.</summary>
|
||||
///<param name="plugin">The plugin that should implement a string property called "name" and a function called "init".</param>
|
||||
///<param name="options">The default options to merge with the FooTable's base options.</param>
|
||||
|
||||
if (w.footable.plugins._validate(plugin)) {
|
||||
w.footable.plugins.registered.push(plugin);
|
||||
if (typeof options === 'object') $.extend(true, w.footable.options, options);
|
||||
}
|
||||
},
|
||||
load: function(instance){
|
||||
var loaded = [], registered, i;
|
||||
for(i = 0; i < w.footable.plugins.registered.length; i++){
|
||||
try {
|
||||
registered = w.footable.plugins.registered[i];
|
||||
loaded.push(new registered(instance));
|
||||
} catch (err) {
|
||||
if (w.footable.options.debug === true) console.error(err);
|
||||
}
|
||||
}
|
||||
return loaded;
|
||||
},
|
||||
init: function (instance) {
|
||||
///<summary>Loops through all registered plugins and calls the "init" method supplying the current <paramref name="instance"/> of the FooTable as the first parameter.</summary>
|
||||
///<param name="instance">The current instance of the FooTable that the plugin is being initialized for.</param>
|
||||
|
||||
for (var i = 0; i < instance.plugins.length; i++) {
|
||||
try {
|
||||
instance.plugins[i]['init'](instance);
|
||||
} catch (err) {
|
||||
if (w.footable.options.debug === true) console.error(err);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
var instanceCount = 0;
|
||||
|
||||
$.fn.footable = function (options) {
|
||||
///<summary>The main constructor call to initialize the plugin using the supplied <paramref name="options"/>.</summary>
|
||||
///<param name="options">
|
||||
///<para>A JSON object containing user defined options for the plugin to use. Any options not supplied will have a default value assigned.</para>
|
||||
///<para>Check the documentation or the default options object above for more information on available options.</para>
|
||||
///</param>
|
||||
|
||||
options = options || {};
|
||||
var o = $.extend(true, {}, w.footable.options, options); //merge user and default options
|
||||
return this.each(function () {
|
||||
instanceCount++;
|
||||
var footable = new Footable(this, o, instanceCount);
|
||||
$(this).data('footable', footable);
|
||||
});
|
||||
};
|
||||
|
||||
//helper for using timeouts
|
||||
function Timer() {
|
||||
///<summary>Simple timer object created around a timeout.</summary>
|
||||
var t = this;
|
||||
t.id = null;
|
||||
t.busy = false;
|
||||
t.start = function (code, milliseconds) {
|
||||
///<summary>Starts the timer and waits the specified amount of <paramref name="milliseconds"/> before executing the supplied <paramref name="code"/>.</summary>
|
||||
///<param name="code">The code to execute once the timer runs out.</param>
|
||||
///<param name="milliseconds">The time in milliseconds to wait before executing the supplied <paramref name="code"/>.</param>
|
||||
|
||||
if (t.busy) {
|
||||
return;
|
||||
}
|
||||
t.stop();
|
||||
t.id = setTimeout(function () {
|
||||
code();
|
||||
t.id = null;
|
||||
t.busy = false;
|
||||
}, milliseconds);
|
||||
t.busy = true;
|
||||
};
|
||||
t.stop = function () {
|
||||
///<summary>Stops the timer if its runnning and resets it back to its starting state.</summary>
|
||||
|
||||
if (t.id !== null) {
|
||||
clearTimeout(t.id);
|
||||
t.id = null;
|
||||
t.busy = false;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
function Footable(t, o, id) {
|
||||
///<summary>Inits a new instance of the plugin.</summary>
|
||||
///<param name="t">The main table element to apply this plugin to.</param>
|
||||
///<param name="o">The options supplied to the plugin. Check the defaults object to see all available options.</param>
|
||||
///<param name="id">The id to assign to this instance of the plugin.</param>
|
||||
|
||||
var ft = this;
|
||||
ft.id = id;
|
||||
ft.table = t;
|
||||
ft.options = o;
|
||||
ft.breakpoints = [];
|
||||
ft.breakpointNames = '';
|
||||
ft.columns = {};
|
||||
ft.plugins = w.footable.plugins.load(ft);
|
||||
|
||||
var opt = ft.options,
|
||||
cls = opt.classes,
|
||||
evt = opt.events,
|
||||
trg = opt.triggers,
|
||||
indexOffset = 0;
|
||||
|
||||
// This object simply houses all the timers used in the FooTable.
|
||||
ft.timers = {
|
||||
resize: new Timer(),
|
||||
register: function (name) {
|
||||
ft.timers[name] = new Timer();
|
||||
return ft.timers[name];
|
||||
}
|
||||
};
|
||||
|
||||
ft.init = function () {
|
||||
var $window = $(w), $table = $(ft.table);
|
||||
|
||||
w.footable.plugins.init(ft);
|
||||
|
||||
if ($table.hasClass(cls.loaded)) {
|
||||
//already loaded FooTable for the table, so don't init again
|
||||
ft.raise(evt.alreadyInitialized);
|
||||
return;
|
||||
}
|
||||
|
||||
//raise the initializing event
|
||||
ft.raise(evt.initializing);
|
||||
|
||||
$table.addClass(cls.loading);
|
||||
|
||||
// Get the column data once for the life time of the plugin
|
||||
$table.find(opt.columnDataSelector).each(function () {
|
||||
var data = ft.getColumnData(this);
|
||||
ft.columns[data.index] = data;
|
||||
});
|
||||
|
||||
// Create a nice friendly array to work with out of the breakpoints object.
|
||||
for (var name in opt.breakpoints) {
|
||||
ft.breakpoints.push({ 'name': name, 'width': opt.breakpoints[name] });
|
||||
ft.breakpointNames += (name + ' ');
|
||||
}
|
||||
|
||||
// Sort the breakpoints so the smallest is checked first
|
||||
ft.breakpoints.sort(function (a, b) {
|
||||
return a['width'] - b['width'];
|
||||
});
|
||||
|
||||
$table
|
||||
.unbind(trg.initialize)
|
||||
//bind to FooTable initialize trigger
|
||||
.bind(trg.initialize, function () {
|
||||
//remove previous "state" (to "force" a resize)
|
||||
$table.removeData('footable_info');
|
||||
$table.data('breakpoint', '');
|
||||
|
||||
//trigger the FooTable resize
|
||||
$table.trigger(trg.resize);
|
||||
|
||||
//remove the loading class
|
||||
$table.removeClass(cls.loading);
|
||||
|
||||
//add the FooTable and loaded class
|
||||
$table.addClass(cls.loaded).addClass(cls.main);
|
||||
|
||||
//raise the initialized event
|
||||
ft.raise(evt.initialized);
|
||||
})
|
||||
.unbind(trg.redraw)
|
||||
//bind to FooTable redraw trigger
|
||||
.bind(trg.redraw, function () {
|
||||
ft.redraw();
|
||||
})
|
||||
.unbind(trg.resize)
|
||||
//bind to FooTable resize trigger
|
||||
.bind(trg.resize, function () {
|
||||
ft.resize();
|
||||
})
|
||||
.unbind(trg.expandFirstRow)
|
||||
//bind to FooTable expandFirstRow trigger
|
||||
.bind(trg.expandFirstRow, function () {
|
||||
$table.find(opt.toggleSelector).first().not('.' + cls.detailShow).trigger(trg.toggleRow);
|
||||
})
|
||||
.unbind(trg.expandAll)
|
||||
//bind to FooTable expandFirstRow trigger
|
||||
.bind(trg.expandAll, function () {
|
||||
$table.find(opt.toggleSelector).not('.' + cls.detailShow).trigger(trg.toggleRow);
|
||||
})
|
||||
.unbind(trg.collapseAll)
|
||||
//bind to FooTable expandFirstRow trigger
|
||||
.bind(trg.collapseAll, function () {
|
||||
$table.find('.' + cls.detailShow).trigger(trg.toggleRow);
|
||||
});
|
||||
|
||||
//trigger a FooTable initialize
|
||||
$table.trigger(trg.initialize);
|
||||
|
||||
//bind to window resize
|
||||
$window
|
||||
.bind('resize.footable', function () {
|
||||
ft.timers.resize.stop();
|
||||
ft.timers.resize.start(function () {
|
||||
ft.raise(trg.resize);
|
||||
}, opt.delay);
|
||||
});
|
||||
};
|
||||
|
||||
ft.addRowToggle = function () {
|
||||
if (!opt.addRowToggle) return;
|
||||
|
||||
var $table = $(ft.table),
|
||||
hasToggleColumn = false;
|
||||
|
||||
//first remove all toggle spans
|
||||
$table.find('span.' + cls.toggle).remove();
|
||||
|
||||
for (var c in ft.columns) {
|
||||
var col = ft.columns[c];
|
||||
if (col.toggle) {
|
||||
hasToggleColumn = true;
|
||||
var selector = '> tbody > tr:not(.' + cls.detail + ',.' + cls.disabled + ') > td:nth-child(' + (parseInt(col.index, 10) + 1) + '),' +
|
||||
'> tbody > tr:not(.' + cls.detail + ',.' + cls.disabled + ') > th:nth-child(' + (parseInt(col.index, 10) + 1) + ')';
|
||||
$table.find(selector).not('.' + cls.detailCell).prepend($(opt.toggleHTMLElement).addClass(cls.toggle));
|
||||
return;
|
||||
}
|
||||
}
|
||||
//check if we have an toggle column. If not then add it to the first column just to be safe
|
||||
if (!hasToggleColumn) {
|
||||
$table
|
||||
.find('> tbody > tr:not(.' + cls.detail + ',.' + cls.disabled + ') > td:first-child')
|
||||
.add('> tbody > tr:not(.' + cls.detail + ',.' + cls.disabled + ') > th:first-child')
|
||||
.not('.' + cls.detailCell)
|
||||
.prepend($(opt.toggleHTMLElement).addClass(cls.toggle));
|
||||
}
|
||||
};
|
||||
|
||||
ft.setColumnClasses = function () {
|
||||
var $table = $(ft.table);
|
||||
for (var c in ft.columns) {
|
||||
var col = ft.columns[c];
|
||||
if (col.className !== null) {
|
||||
var selector = '', first = true;
|
||||
$.each(col.matches, function (m, match) { //support for colspans
|
||||
if (!first) selector += ', ';
|
||||
selector += '> tbody > tr:not(.' + cls.detail + ') > td:nth-child(' + (parseInt(match, 10) + 1) + ')';
|
||||
first = false;
|
||||
});
|
||||
//add the className to the cells specified by data-class="blah"
|
||||
$table.find(selector).not('.' + cls.detailCell).addClass(col.className);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
//moved this out into it's own function so that it can be called from other add-ons
|
||||
ft.bindToggleSelectors = function () {
|
||||
var $table = $(ft.table);
|
||||
|
||||
if (!ft.hasAnyBreakpointColumn()) return;
|
||||
|
||||
$table.find(opt.toggleSelector).unbind(trg.toggleRow).bind(trg.toggleRow, function (e) {
|
||||
var $row = $(this).is('tr') ? $(this) : $(this).parents('tr:first');
|
||||
ft.toggleDetail($row);
|
||||
});
|
||||
|
||||
$table.find(opt.toggleSelector).unbind('click.footable').bind('click.footable', function (e) {
|
||||
if ($table.is('.breakpoint') && $(e.target).is('td,th,.'+ cls.toggle)) {
|
||||
$(this).trigger(trg.toggleRow);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
ft.parse = function (cell, column) {
|
||||
var parser = opt.parsers[column.type] || opt.parsers.alpha;
|
||||
return parser(cell);
|
||||
};
|
||||
|
||||
ft.getColumnData = function (th) {
|
||||
var $th = $(th), hide = $th.data('hide'), index = $th.index();
|
||||
hide = hide || '';
|
||||
hide = jQuery.map(hide.split(','), function (a) {
|
||||
return jQuery.trim(a);
|
||||
});
|
||||
var data = {
|
||||
'index': index,
|
||||
'hide': { },
|
||||
'type': $th.data('type') || 'alpha',
|
||||
'name': $th.data('name') || $.trim($th.text()),
|
||||
'ignore': $th.data('ignore') || false,
|
||||
'toggle': $th.data('toggle') || false,
|
||||
'className': $th.data('class') || null,
|
||||
'matches': [],
|
||||
'names': { },
|
||||
'group': $th.data('group') || null,
|
||||
'groupName': null,
|
||||
'isEditable': $th.data('editable')
|
||||
};
|
||||
|
||||
if (data.group !== null) {
|
||||
var $group = $(ft.table).find('> thead > tr.footable-group-row > th[data-group="' + data.group + '"], > thead > tr.footable-group-row > td[data-group="' + data.group + '"]').first();
|
||||
data.groupName = ft.parse($group, { 'type': 'alpha' });
|
||||
}
|
||||
|
||||
var pcolspan = parseInt($th.prev().attr('colspan') || 0, 10);
|
||||
indexOffset += pcolspan > 1 ? pcolspan - 1 : 0;
|
||||
var colspan = parseInt($th.attr('colspan') || 0, 10), curindex = data.index + indexOffset;
|
||||
if (colspan > 1) {
|
||||
var names = $th.data('names');
|
||||
names = names || '';
|
||||
names = names.split(',');
|
||||
for (var i = 0; i < colspan; i++) {
|
||||
data.matches.push(i + curindex);
|
||||
if (i < names.length) data.names[i + curindex] = names[i];
|
||||
}
|
||||
} else {
|
||||
data.matches.push(curindex);
|
||||
}
|
||||
|
||||
data.hide['default'] = ($th.data('hide') === "all") || ($.inArray('default', hide) >= 0);
|
||||
|
||||
var hasBreakpoint = false;
|
||||
for (var name in opt.breakpoints) {
|
||||
data.hide[name] = ($th.data('hide') === "all") || ($.inArray(name, hide) >= 0);
|
||||
hasBreakpoint = hasBreakpoint || data.hide[name];
|
||||
}
|
||||
data.hasBreakpoint = hasBreakpoint;
|
||||
var e = ft.raise(evt.columnData, { 'column': { 'data': data, 'th': th } });
|
||||
return e.column.data;
|
||||
};
|
||||
|
||||
ft.getViewportWidth = function () {
|
||||
return window.innerWidth || (document.body ? document.body.offsetWidth : 0);
|
||||
};
|
||||
|
||||
ft.calculateWidth = function ($table, info) {
|
||||
if (jQuery.isFunction(opt.calculateWidthOverride)) {
|
||||
return opt.calculateWidthOverride($table, info);
|
||||
}
|
||||
if (info.viewportWidth < info.width) info.width = info.viewportWidth;
|
||||
if (info.parentWidth < info.width) info.width = info.parentWidth;
|
||||
return info;
|
||||
};
|
||||
|
||||
ft.hasBreakpointColumn = function (breakpoint) {
|
||||
for (var c in ft.columns) {
|
||||
if (ft.columns[c].hide[breakpoint]) {
|
||||
if (ft.columns[c].ignore) {
|
||||
continue;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
};
|
||||
|
||||
ft.hasAnyBreakpointColumn = function () {
|
||||
for (var c in ft.columns) {
|
||||
if (ft.columns[c].hasBreakpoint) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
};
|
||||
|
||||
ft.resize = function () {
|
||||
var $table = $(ft.table);
|
||||
|
||||
if (!$table.is(':visible')) {
|
||||
return;
|
||||
} //we only care about FooTables that are visible
|
||||
|
||||
if (!ft.hasAnyBreakpointColumn()) {
|
||||
$table.trigger(trg.redraw);
|
||||
return;
|
||||
} //we only care about FooTables that have breakpoints
|
||||
|
||||
var info = {
|
||||
'width': $table.width(), //the table width
|
||||
'viewportWidth': ft.getViewportWidth(), //the width of the viewport
|
||||
'parentWidth': $table.parent().width() //the width of the parent
|
||||
};
|
||||
|
||||
info = ft.calculateWidth($table, info);
|
||||
|
||||
var pinfo = $table.data('footable_info');
|
||||
$table.data('footable_info', info);
|
||||
ft.raise(evt.resizing, { 'old': pinfo, 'info': info });
|
||||
|
||||
// This (if) statement is here purely to make sure events aren't raised twice as mobile safari seems to do
|
||||
if (!pinfo || (pinfo && pinfo.width && pinfo.width !== info.width)) {
|
||||
|
||||
var current = null, breakpoint;
|
||||
for (var i = 0; i < ft.breakpoints.length; i++) {
|
||||
breakpoint = ft.breakpoints[i];
|
||||
if (breakpoint && breakpoint.width && info.width <= breakpoint.width) {
|
||||
current = breakpoint;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
var breakpointName = (current === null ? 'default' : current['name']),
|
||||
hasBreakpointFired = ft.hasBreakpointColumn(breakpointName),
|
||||
previousBreakpoint = $table.data('breakpoint');
|
||||
|
||||
$table
|
||||
.data('breakpoint', breakpointName)
|
||||
.removeClass('default breakpoint').removeClass(ft.breakpointNames)
|
||||
.addClass(breakpointName + (hasBreakpointFired ? ' breakpoint' : ''));
|
||||
|
||||
//only do something if the breakpoint has changed
|
||||
if (breakpointName !== previousBreakpoint) {
|
||||
//trigger a redraw
|
||||
$table.trigger(trg.redraw);
|
||||
//raise a breakpoint event
|
||||
ft.raise(evt.breakpoint, { 'breakpoint': breakpointName, 'info': info });
|
||||
}
|
||||
}
|
||||
|
||||
ft.raise(evt.resized, { 'old': pinfo, 'info': info });
|
||||
};
|
||||
|
||||
ft.redraw = function () {
|
||||
//add the toggler to each row
|
||||
ft.addRowToggle();
|
||||
|
||||
//bind the toggle selector click events
|
||||
ft.bindToggleSelectors();
|
||||
|
||||
//set any cell classes defined for the columns
|
||||
ft.setColumnClasses();
|
||||
|
||||
var $table = $(ft.table),
|
||||
breakpointName = $table.data('breakpoint'),
|
||||
hasBreakpointFired = ft.hasBreakpointColumn(breakpointName);
|
||||
|
||||
$table
|
||||
.find('> tbody > tr:not(.' + cls.detail + ')').data('detail_created', false).end()
|
||||
.find('> thead > tr:last-child > th')
|
||||
.each(function () {
|
||||
var data = ft.columns[$(this).index()], selector = '', first = true;
|
||||
$.each(data.matches, function (m, match) {
|
||||
if (!first) {
|
||||
selector += ', ';
|
||||
}
|
||||
var count = match + 1;
|
||||
selector += '> tbody > tr:not(.' + cls.detail + ') > td:nth-child(' + count + ')';
|
||||
selector += ', > tfoot > tr:not(.' + cls.detail + ') > td:nth-child(' + count + ')';
|
||||
selector += ', > colgroup > col:nth-child(' + count + ')';
|
||||
first = false;
|
||||
});
|
||||
|
||||
selector += ', > thead > tr[data-group-row="true"] > th[data-group="' + data.group + '"]';
|
||||
var $column = $table.find(selector).add(this);
|
||||
if (breakpointName !== '') {
|
||||
if (data.hide[breakpointName] === false) $column.addClass('footable-visible').show();
|
||||
else $column.removeClass('footable-visible').hide();
|
||||
}
|
||||
|
||||
if ($table.find('> thead > tr.footable-group-row').length === 1) {
|
||||
var $groupcols = $table.find('> thead > tr:last-child > th[data-group="' + data.group + '"]:visible, > thead > tr:last-child > th[data-group="' + data.group + '"]:visible'),
|
||||
$group = $table.find('> thead > tr.footable-group-row > th[data-group="' + data.group + '"], > thead > tr.footable-group-row > td[data-group="' + data.group + '"]'),
|
||||
groupspan = 0;
|
||||
|
||||
$.each($groupcols, function () {
|
||||
groupspan += parseInt($(this).attr('colspan') || 1, 10);
|
||||
});
|
||||
|
||||
if (groupspan > 0) $group.attr('colspan', groupspan).show();
|
||||
else $group.hide();
|
||||
}
|
||||
})
|
||||
.end()
|
||||
.find('> tbody > tr.' + cls.detailShow).each(function () {
|
||||
ft.createOrUpdateDetailRow(this);
|
||||
});
|
||||
|
||||
$table.find("[data-bind-name]").each(function () {
|
||||
ft.toggleInput(this);
|
||||
});
|
||||
|
||||
$table.find('> tbody > tr.' + cls.detailShow + ':visible').each(function () {
|
||||
var $next = $(this).next();
|
||||
if ($next.hasClass(cls.detail)) {
|
||||
if (!hasBreakpointFired) $next.hide();
|
||||
else $next.show();
|
||||
}
|
||||
});
|
||||
|
||||
// adding .footable-first-column and .footable-last-column to the first and last th and td of each row in order to allow
|
||||
// for styling if the first or last column is hidden (which won't work using :first-child or :last-child)
|
||||
$table.find('> thead > tr > th.footable-last-column, > tbody > tr > td.footable-last-column').removeClass('footable-last-column');
|
||||
$table.find('> thead > tr > th.footable-first-column, > tbody > tr > td.footable-first-column').removeClass('footable-first-column');
|
||||
$table.find('> thead > tr, > tbody > tr')
|
||||
.find('> th.footable-visible:last, > td.footable-visible:last')
|
||||
.addClass('footable-last-column')
|
||||
.end()
|
||||
.find('> th.footable-visible:first, > td.footable-visible:first')
|
||||
.addClass('footable-first-column');
|
||||
|
||||
ft.raise(evt.redrawn);
|
||||
};
|
||||
|
||||
ft.toggleDetail = function (row) {
|
||||
var $row = (row.jquery) ? row : $(row),
|
||||
$next = $row.next();
|
||||
|
||||
//check if the row is already expanded
|
||||
if ($row.hasClass(cls.detailShow)) {
|
||||
$row.removeClass(cls.detailShow);
|
||||
|
||||
//only hide the next row if it's a detail row
|
||||
if ($next.hasClass(cls.detail)) $next.hide();
|
||||
|
||||
ft.raise(evt.rowCollapsed, { 'row': $row[0] });
|
||||
|
||||
} else {
|
||||
ft.createOrUpdateDetailRow($row[0]);
|
||||
$row.addClass(cls.detailShow)
|
||||
.next().show();
|
||||
|
||||
ft.raise(evt.rowExpanded, { 'row': $row[0] });
|
||||
}
|
||||
};
|
||||
|
||||
ft.removeRow = function (row) {
|
||||
var $row = (row.jquery) ? row : $(row);
|
||||
if ($row.hasClass(cls.detail)) {
|
||||
$row = $row.prev();
|
||||
}
|
||||
var $next = $row.next();
|
||||
if ($row.data('detail_created') === true) {
|
||||
//remove the detail row
|
||||
$next.remove();
|
||||
}
|
||||
$row.remove();
|
||||
|
||||
//raise event
|
||||
ft.raise(evt.rowRemoved);
|
||||
};
|
||||
|
||||
ft.appendRow = function (row) {
|
||||
var $row = (row.jquery) ? row : $(row);
|
||||
$(ft.table).find('tbody').append($row);
|
||||
|
||||
//redraw the table
|
||||
ft.redraw();
|
||||
};
|
||||
|
||||
ft.getColumnFromTdIndex = function (index) {
|
||||
/// <summary>Returns the correct column data for the supplied index taking into account colspans.</summary>
|
||||
/// <param name="index">The index to retrieve the column data for.</param>
|
||||
/// <returns type="json">A JSON object containing the column data for the supplied index.</returns>
|
||||
var result = null;
|
||||
for (var column in ft.columns) {
|
||||
if ($.inArray(index, ft.columns[column].matches) >= 0) {
|
||||
result = ft.columns[column];
|
||||
break;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
};
|
||||
|
||||
ft.createOrUpdateDetailRow = function (actualRow) {
|
||||
var $row = $(actualRow), $next = $row.next(), $detail, values = [];
|
||||
if ($row.data('detail_created') === true) return true;
|
||||
|
||||
if ($row.is(':hidden')) return false; //if the row is hidden for some reason (perhaps filtered) then get out of here
|
||||
ft.raise(evt.rowDetailUpdating, { 'row': $row, 'detail': $next });
|
||||
$row.find('> td:hidden').each(function () {
|
||||
var index = $(this).index(), column = ft.getColumnFromTdIndex(index), name = column.name;
|
||||
if (column.ignore === true) return true;
|
||||
|
||||
if (index in column.names) name = column.names[index];
|
||||
|
||||
var bindName = $(this).attr("data-bind-name");
|
||||
if (bindName != null && $(this).is(':empty')) {
|
||||
var bindValue = $('.' + cls.detailInnerValue + '[' + 'data-bind-value="' + bindName + '"]');
|
||||
$(this).html($(bindValue).contents().detach());
|
||||
}
|
||||
var display;
|
||||
if (column.isEditable !== false && (column.isEditable || $(this).find(":input").length > 0)) {
|
||||
if(bindName == null) {
|
||||
bindName = "bind-" + $.now() + "-" + index;
|
||||
$(this).attr("data-bind-name", bindName);
|
||||
}
|
||||
display = $(this).contents().detach();
|
||||
}
|
||||
if (!display) display = $(this).contents().clone(true, true);
|
||||
values.push({ 'name': name, 'value': ft.parse(this, column), 'display': display, 'group': column.group, 'groupName': column.groupName, 'bindName': bindName });
|
||||
return true;
|
||||
});
|
||||
if (values.length === 0) return false; //return if we don't have any data to show
|
||||
var colspan = $row.find('> td:visible').length;
|
||||
var exists = $next.hasClass(cls.detail);
|
||||
if (!exists) { // Create
|
||||
$next = $('<tr class="' + cls.detail + '"><td class="' + cls.detailCell + '"><div class="' + cls.detailInner + '"></div></td></tr>');
|
||||
$row.after($next);
|
||||
}
|
||||
$next.find('> td:first').attr('colspan', colspan);
|
||||
$detail = $next.find('.' + cls.detailInner).empty();
|
||||
opt.createDetail($detail, values, opt.createGroupedDetail, opt.detailSeparator, cls);
|
||||
$row.data('detail_created', true);
|
||||
ft.raise(evt.rowDetailUpdated, { 'row': $row, 'detail': $next });
|
||||
return !exists;
|
||||
};
|
||||
|
||||
ft.raise = function (eventName, args) {
|
||||
|
||||
if (ft.options.debug === true && $.isFunction(ft.options.log)) ft.options.log(eventName, 'event');
|
||||
|
||||
args = args || { };
|
||||
var def = { 'ft': ft };
|
||||
$.extend(true, def, args);
|
||||
var e = $.Event(eventName, def);
|
||||
if (!e.ft) {
|
||||
$.extend(true, e, def);
|
||||
} //pre jQuery 1.6 which did not allow data to be passed to event object constructor
|
||||
$(ft.table).trigger(e);
|
||||
return e;
|
||||
};
|
||||
|
||||
//reset the state of FooTable
|
||||
ft.reset = function() {
|
||||
var $table = $(ft.table);
|
||||
$table.removeData('footable_info')
|
||||
.data('breakpoint', '')
|
||||
.removeClass(cls.loading)
|
||||
.removeClass(cls.loaded);
|
||||
|
||||
$table.find(opt.toggleSelector).unbind(trg.toggleRow).unbind('click.footable');
|
||||
|
||||
$table.find('> tbody > tr').removeClass(cls.detailShow);
|
||||
|
||||
$table.find('> tbody > tr.' + cls.detail).remove();
|
||||
|
||||
ft.raise(evt.reset);
|
||||
};
|
||||
|
||||
//Switch between row-detail and detail-show.
|
||||
ft.toggleInput = function (column) {
|
||||
var bindName = $(column).attr("data-bind-name");
|
||||
if(bindName != null) {
|
||||
var bindValue = $('.' + cls.detailInnerValue + '[' + 'data-bind-value="' + bindName + '"]');
|
||||
if(bindValue != null) {
|
||||
if($(column).is(":visible")) {
|
||||
if(!$(bindValue).is(':empty')) $(column).html($(bindValue).contents().detach());
|
||||
} else if(!$(column).is(':empty')) {
|
||||
$(bindValue).html($(column).contents().detach());
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
ft.init();
|
||||
return ft;
|
||||
}
|
||||
})(jQuery, window);
|
@ -0,0 +1,429 @@
|
||||
/**
|
||||
* Footable Memory
|
||||
*
|
||||
* Version 1.1.0
|
||||
*
|
||||
* Requires browser support for localStorage. Fallback to cookies using
|
||||
* jQuery Cookie (https://github.com/carhartl/jquery-cookie)
|
||||
*
|
||||
* Stores table state in a cookie and reloads state when page is refreshed.
|
||||
*
|
||||
* Supports common FooTable features:
|
||||
* - Pagination
|
||||
* - Sorting
|
||||
* - Filtering
|
||||
* - Expansion
|
||||
*
|
||||
* Written to be compatible with multiple FooTables per page and with
|
||||
* JavaScript libraries like AngularJS and Ember that use hash based URLs.
|
||||
*
|
||||
* Disabled by default, to enable add the following section to the footable
|
||||
* options:
|
||||
*
|
||||
* $('#table').footable({
|
||||
* memory: {
|
||||
* enabled: true
|
||||
* }
|
||||
* });
|
||||
*
|
||||
* Based on FooTable Plugin Bookmarkable by Amy Farrell (https://github.com/akf)
|
||||
*
|
||||
* Created by Chris Laskey (https://github.com/chrislaskey)
|
||||
*/
|
||||
|
||||
(function ($, w, undefined) {
|
||||
|
||||
if (w.footable === undefined || w.foobox === null) {
|
||||
throw new Error('Please check and make sure footable.js is included in the page and is loaded prior to this script.');
|
||||
}
|
||||
|
||||
var defaults = {
|
||||
memory: {
|
||||
enabled: false
|
||||
}
|
||||
};
|
||||
|
||||
var storage;
|
||||
|
||||
var storage_engines = {};
|
||||
|
||||
storage_engines.local_storage = (function($){
|
||||
|
||||
'use strict';
|
||||
|
||||
var path_page = function(){
|
||||
return location.pathname;
|
||||
};
|
||||
|
||||
var path_subpage = function(){
|
||||
return location.hash || 'root';
|
||||
};
|
||||
|
||||
var storage_key = function(index){
|
||||
return path_page() + '/' + path_subpage() + '/index-' + index;
|
||||
};
|
||||
|
||||
var get = function(index){
|
||||
var key = storage_key(index),
|
||||
as_string = localStorage.getItem(key);
|
||||
|
||||
return as_string ? JSON.parse(as_string) : {};
|
||||
};
|
||||
|
||||
var set = function(index, item){
|
||||
var key = storage_key(index),
|
||||
as_string = JSON.stringify(item);
|
||||
|
||||
localStorage.setItem(key, as_string);
|
||||
};
|
||||
|
||||
return {
|
||||
get: function(index){
|
||||
return get(index);
|
||||
},
|
||||
set: function(index, item){
|
||||
set(index, item);
|
||||
}
|
||||
};
|
||||
|
||||
})($);
|
||||
|
||||
storage_engines.cookie = (function($){
|
||||
|
||||
'use strict';
|
||||
|
||||
/**
|
||||
* Stores footable bookmarkable data in a cookie
|
||||
*
|
||||
* By default will store each page in its own cookie.
|
||||
* Supports multiple FooTables per page.
|
||||
* Supports JS frameworks that use hashmap URLs (AngularJS, Ember, etc).
|
||||
*
|
||||
* For example take an example application:
|
||||
*
|
||||
* http://example.com/application-data (2 FooTables on this page)
|
||||
* http://example.com/application-data/#/details (1 FooTable on this page)
|
||||
* http://example.com/other-data (1 FooTable on this page)
|
||||
*
|
||||
* Would be stored like this:
|
||||
*
|
||||
* cookie['/application-data'] = {
|
||||
* '/': {
|
||||
* 1: {
|
||||
* key1: value1,
|
||||
* key2: value2
|
||||
* },
|
||||
* 2: {
|
||||
* key1: value1,
|
||||
* key2: value2
|
||||
* }
|
||||
* },
|
||||
* '#/details': {
|
||||
* 1: {
|
||||
* key1: value1,
|
||||
* key2: value2
|
||||
* }
|
||||
* }
|
||||
* };
|
||||
*
|
||||
* cookie['/other-data'] = {
|
||||
* '/': {
|
||||
* 1: {
|
||||
* key1: value1,
|
||||
* key2: value2
|
||||
* },
|
||||
* }
|
||||
* }
|
||||
*
|
||||
*/
|
||||
|
||||
if( $.cookie ){
|
||||
$.cookie.json = true;
|
||||
}
|
||||
|
||||
var days_to_keep_data = 7;
|
||||
|
||||
var path_page = function(){
|
||||
return location.pathname;
|
||||
};
|
||||
|
||||
var path_subpage = function(){
|
||||
return location.hash || '/';
|
||||
};
|
||||
|
||||
var get_data = function(){
|
||||
var page = path_page(),
|
||||
data = $.cookie(page);
|
||||
|
||||
return data || {};
|
||||
};
|
||||
|
||||
var get_table = function(index){
|
||||
var subpage = path_subpage(),
|
||||
data = get_data();
|
||||
|
||||
if( data[subpage] && data[subpage][index] ){
|
||||
return data[subpage][index];
|
||||
} else {
|
||||
return {};
|
||||
}
|
||||
};
|
||||
|
||||
var set = function(index, item){
|
||||
var page = path_page(),
|
||||
subpage = path_subpage(),
|
||||
data = get_data(),
|
||||
options;
|
||||
|
||||
if( !data[subpage] ){
|
||||
data[subpage] = {};
|
||||
}
|
||||
|
||||
data[subpage][index] = item;
|
||||
|
||||
options = {
|
||||
path: page,
|
||||
expires: days_to_keep_data
|
||||
};
|
||||
|
||||
$.cookie(page, data, options);
|
||||
};
|
||||
|
||||
return {
|
||||
get: function(index){
|
||||
return get_table(index);
|
||||
},
|
||||
set: function(index, item){
|
||||
set(index, item);
|
||||
}
|
||||
};
|
||||
|
||||
})($);
|
||||
|
||||
var set_storage_engine = (function(){
|
||||
var test = 'footable-memory-plugin-storage-test';
|
||||
|
||||
try {
|
||||
localStorage.setItem(test, test);
|
||||
localStorage.removeItem(test);
|
||||
storage = storage_engines.local_storage;
|
||||
} catch(e) {
|
||||
try {
|
||||
$.cookie(test, test);
|
||||
storage = storage_engines.cookie;
|
||||
} catch(e) {
|
||||
throw new Error('FooTable Memory requires either localStorage or cookie support via jQuery $.cookie plugin (https://github.com/carhartl/jquery-cookie)');
|
||||
}
|
||||
}
|
||||
})($);
|
||||
|
||||
var state = (function($){
|
||||
|
||||
'use strict';
|
||||
|
||||
/**
|
||||
* Gets and sets current table state
|
||||
*/
|
||||
|
||||
var vars = {};
|
||||
|
||||
var get = {};
|
||||
|
||||
var set = {};
|
||||
|
||||
set.vars = function(ft){
|
||||
vars.ft = ft;
|
||||
vars.table = $(ft.table);
|
||||
};
|
||||
|
||||
get.descending = function(){
|
||||
var descending = false;
|
||||
$.each(vars.table.find('th'), function(index){
|
||||
if( $(this).hasClass('footable-sorted-desc') ){
|
||||
descending = true;
|
||||
}
|
||||
});
|
||||
return descending;
|
||||
};
|
||||
|
||||
get.expanded = function(){
|
||||
var indexes = [];
|
||||
$.each(vars.ft.table.rows, function(index, value){
|
||||
if( $(this).hasClass('footable-detail-show') ){
|
||||
indexes.push(index);
|
||||
}
|
||||
});
|
||||
return indexes;
|
||||
};
|
||||
|
||||
set.expanded = function(data){
|
||||
if( data.expanded ){
|
||||
$.each(data.expanded, function(index, value){
|
||||
// var row = $(vars.ft.table.rows[value]);
|
||||
// row.find('> td:first').trigger('footable_toggle_row');
|
||||
|
||||
// Trying to execute the lines above, but the expanded row
|
||||
// shows raw AngularJS template (with {{ values }}) instead
|
||||
// of the fully rendered result.
|
||||
//
|
||||
// Best guess is some things happen after
|
||||
// 'footable_initialized' event and row expanding can not
|
||||
// occur until after those fire.
|
||||
//
|
||||
// A hack to get around this is to wait an interval before
|
||||
// executing the intended commands. Wrapped in an
|
||||
// immediately executing function to ensure ft is the
|
||||
// current value.
|
||||
|
||||
(function(ft){
|
||||
setTimeout(function(){
|
||||
var row = $(ft.table.rows[value]);
|
||||
row.find('> td:first').trigger('footable_toggle_row');
|
||||
}, 150);
|
||||
})(vars.ft);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
get.filter = function(){
|
||||
return vars.table.data('filter') ? $(vars.table.data('filter')).val() : '';
|
||||
};
|
||||
|
||||
set.filter = function(data){
|
||||
if( data.filter ){
|
||||
$(vars.table.data('filter'))
|
||||
.val(data.filter)
|
||||
.trigger('keyup');
|
||||
}
|
||||
};
|
||||
|
||||
get.page = function(){
|
||||
return vars.ft.pageInfo && vars.ft.pageInfo.currentPage !== undefined ? vars.ft.pageInfo.currentPage : 0;
|
||||
};
|
||||
|
||||
set.page = function(data){
|
||||
if( data.page ){
|
||||
vars.table.data('currentPage', data.page);
|
||||
// Delay triggering table until sort is updated, since both effect
|
||||
// pagination.
|
||||
}
|
||||
};
|
||||
|
||||
get.shown = function(){
|
||||
return vars.table
|
||||
.find('tbody')
|
||||
.find('tr:not(.footable-row-detail)')
|
||||
.filter(':visible').length;
|
||||
};
|
||||
|
||||
get.sorted = function(){
|
||||
if( vars.table.data('sorted') !== undefined ){
|
||||
return vars.table.data('sorted');
|
||||
} else {
|
||||
return -1;
|
||||
}
|
||||
};
|
||||
|
||||
set.sorted = function(data){
|
||||
if( data.sorted >= 0 ) {
|
||||
// vars.table.data('footable-sort').doSort(data.sorted, !data.descending);
|
||||
|
||||
// Trying to execute the line above, but only sort icon on the
|
||||
// <th> element gets set. The rows themselves do not get sorted.
|
||||
//
|
||||
// Best guess is some things happen after 'footable_initialized' event
|
||||
// and sorting can not occur until after those fire.
|
||||
//
|
||||
// A hack to get around this is to wait an interval before executing
|
||||
// the intended commands. Wrapped in an immediately executing
|
||||
// function to ensure ft is the current value.
|
||||
|
||||
(function(ft){
|
||||
setTimeout(function(){
|
||||
$(ft.table).data('footable-sort').doSort(data.sorted, !data.descending);
|
||||
}, 150);
|
||||
})(vars.ft);
|
||||
} else {
|
||||
vars.table.trigger('footable_setup_paging');
|
||||
}
|
||||
};
|
||||
|
||||
get.total = function(){
|
||||
return vars.table
|
||||
.find('tbody')
|
||||
.find('tr:not(.footable-row-detail, .footable-filtered)').length;
|
||||
};
|
||||
|
||||
var get_state = function(){
|
||||
return {
|
||||
descending: get.descending(),
|
||||
expanded: get.expanded(),
|
||||
filter: get.filter(),
|
||||
page: get.page(),
|
||||
shown: get.shown(),
|
||||
sorted: get.sorted(),
|
||||
total: get.total()
|
||||
};
|
||||
};
|
||||
|
||||
var set_state = function(data){
|
||||
set.filter(data);
|
||||
set.page(data);
|
||||
set.sorted(data);
|
||||
set.expanded(data);
|
||||
};
|
||||
|
||||
return {
|
||||
get: function(ft){
|
||||
set.vars(ft);
|
||||
return get_state();
|
||||
},
|
||||
set: function(ft, data){
|
||||
set.vars(ft);
|
||||
return set_state(data);
|
||||
}
|
||||
};
|
||||
|
||||
})($);
|
||||
|
||||
var is_enabled = function(ft){
|
||||
return ft.options.memory.enabled;
|
||||
};
|
||||
|
||||
var update = function(ft, event) {
|
||||
var index = ft.id,
|
||||
data = state.get(ft);
|
||||
|
||||
storage.set(index, data);
|
||||
};
|
||||
|
||||
var load = function(ft){
|
||||
var index = ft.id,
|
||||
data = storage.get(index);
|
||||
|
||||
state.set(ft, data);
|
||||
ft.memory_plugin_loaded = true;
|
||||
};
|
||||
|
||||
function Memory() {
|
||||
var p = this;
|
||||
p.name = 'Footable Memory';
|
||||
p.init = function(ft) {
|
||||
if (is_enabled(ft)) {
|
||||
$(ft.table).bind({
|
||||
'footable_initialized': function(){
|
||||
load(ft);
|
||||
},
|
||||
'footable_page_filled footable_redrawn footable_filtered footable_sorted footable_row_expanded footable_row_collapsed': function(e) {
|
||||
if (ft.memory_plugin_loaded) {
|
||||
update(ft, e);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
w.footable.plugins.register(Memory, defaults);
|
||||
|
||||
})(jQuery, window);
|
@ -0,0 +1,242 @@
|
||||
(function ($, w, undefined) {
|
||||
if (w.footable === undefined || w.footable === null)
|
||||
throw new Error('Please check and make sure footable.js is included in the page and is loaded prior to this script.');
|
||||
|
||||
var defaults = {
|
||||
paginate: true,
|
||||
pageSize: 10,
|
||||
pageNavigation: '.pagination',
|
||||
firstText: '«',
|
||||
previousText: '‹',
|
||||
nextText: '›',
|
||||
lastText: '»',
|
||||
limitNavigation: 0,
|
||||
limitPreviousText: '...',
|
||||
limitNextText: '...'
|
||||
};
|
||||
|
||||
function pageInfo(ft) {
|
||||
var $table = $(ft.table), data = $table.data();
|
||||
this.pageNavigation = data.pageNavigation || ft.options.pageNavigation;
|
||||
this.pageSize = data.pageSize || ft.options.pageSize;
|
||||
this.firstText = data.firstText || ft.options.firstText;
|
||||
this.previousText = data.previousText || ft.options.previousText;
|
||||
this.nextText = data.nextText || ft.options.nextText;
|
||||
this.lastText = data.lastText || ft.options.lastText;
|
||||
this.limitNavigation = parseInt(data.limitNavigation || ft.options.limitNavigation || defaults.limitNavigation, 10);
|
||||
this.limitPreviousText = data.limitPreviousText || ft.options.limitPreviousText;
|
||||
this.limitNextText = data.limitNextText || ft.options.limitNextText;
|
||||
this.limit = this.limitNavigation > 0;
|
||||
this.currentPage = data.currentPage || 0;
|
||||
this.pages = [];
|
||||
this.control = false;
|
||||
}
|
||||
|
||||
function Paginate() {
|
||||
var p = this;
|
||||
p.name = 'Footable Paginate';
|
||||
|
||||
p.init = function (ft) {
|
||||
if (ft.options.paginate === true) {
|
||||
if ($(ft.table).data('page') === false) return;
|
||||
p.footable = ft;
|
||||
$(ft.table)
|
||||
.unbind('.paging')
|
||||
.bind({
|
||||
'footable_initialized.paging footable_row_removed.paging footable_redrawn.paging footable_sorted.paging footable_filtered.paging': function () {
|
||||
p.setupPaging();
|
||||
}
|
||||
})
|
||||
//save the filter object onto the table so we can access it later
|
||||
.data('footable-paging', p);
|
||||
}
|
||||
};
|
||||
|
||||
p.setupPaging = function () {
|
||||
var ft = p.footable,
|
||||
$tbody = $(ft.table).find('> tbody');
|
||||
|
||||
ft.pageInfo = new pageInfo(ft);
|
||||
|
||||
p.createPages(ft, $tbody);
|
||||
p.createNavigation(ft, $tbody);
|
||||
p.fillPage(ft, $tbody, ft.pageInfo.currentPage);
|
||||
};
|
||||
|
||||
p.createPages = function (ft, tbody) {
|
||||
var pages = 1;
|
||||
var info = ft.pageInfo;
|
||||
var pageCount = pages * info.pageSize;
|
||||
var page = [];
|
||||
var lastPage = [];
|
||||
info.pages = [];
|
||||
var rows = tbody.find('> tr:not(.footable-filtered,.footable-row-detail)');
|
||||
rows.each(function (i, row) {
|
||||
page.push(row);
|
||||
if (i === pageCount - 1) {
|
||||
info.pages.push(page);
|
||||
pages++;
|
||||
pageCount = pages * info.pageSize;
|
||||
page = [];
|
||||
} else if (i >= rows.length - (rows.length % info.pageSize)) {
|
||||
lastPage.push(row);
|
||||
}
|
||||
});
|
||||
if (lastPage.length > 0) info.pages.push(lastPage);
|
||||
if (info.currentPage >= info.pages.length) info.currentPage = info.pages.length - 1;
|
||||
if (info.currentPage < 0) info.currentPage = 0;
|
||||
if (info.pages.length === 1) {
|
||||
//we only have a single page
|
||||
$(ft.table).addClass('no-paging');
|
||||
} else {
|
||||
$(ft.table).removeClass('no-paging');
|
||||
}
|
||||
};
|
||||
|
||||
p.createNavigation = function (ft, tbody) {
|
||||
var $nav = $(ft.table).find(ft.pageInfo.pageNavigation);
|
||||
//if we cannot find the navigation control within the table, then try find it outside
|
||||
if ($nav.length === 0) {
|
||||
$nav = $(ft.pageInfo.pageNavigation);
|
||||
//if the navigation control is inside another table, then get out
|
||||
if ($nav.parents('table:first').length > 0 && $nav.parents('table:first') !== $(ft.table)) return;
|
||||
//if we found more than one navigation control, write error to console
|
||||
if ($nav.length > 1 && ft.options.debug === true) console.error('More than one pagination control was found!');
|
||||
}
|
||||
//if we still cannot find the control, then don't do anything
|
||||
if ($nav.length === 0) return;
|
||||
//if the nav is not a UL, then find or create a UL
|
||||
if (!$nav.is('ul')) {
|
||||
if ($nav.find('ul:first').length === 0) {
|
||||
$nav.append('<ul />');
|
||||
}
|
||||
$nav = $nav.find('ul');
|
||||
}
|
||||
$nav.find('li').remove();
|
||||
var info = ft.pageInfo;
|
||||
info.control = $nav;
|
||||
if (info.pages.length > 0) {
|
||||
$nav.append('<li class="footable-page-arrow"><a data-page="first" href="#first">' + ft.pageInfo.firstText + '</a>');
|
||||
$nav.append('<li class="footable-page-arrow"><a data-page="prev" href="#prev">' + ft.pageInfo.previousText + '</a></li>');
|
||||
if (info.limit){
|
||||
$nav.append('<li class="footable-page-arrow"><a data-page="limit-prev" href="#limit-prev">' + ft.pageInfo.limitPreviousText + '</a></li>');
|
||||
}
|
||||
if (!info.limit){
|
||||
$.each(info.pages, function (i, page) {
|
||||
if (page.length > 0) {
|
||||
$nav.append('<li class="footable-page"><a data-page="' + i + '" href="#">' + (i + 1) + '</a></li>');
|
||||
}
|
||||
});
|
||||
}
|
||||
if (info.limit){
|
||||
$nav.append('<li class="footable-page-arrow"><a data-page="limit-next" href="#limit-next">' + ft.pageInfo.limitNextText + '</a></li>');
|
||||
p.createLimited($nav, info, 0);
|
||||
}
|
||||
$nav.append('<li class="footable-page-arrow"><a data-page="next" href="#next">' + ft.pageInfo.nextText + '</a></li>');
|
||||
$nav.append('<li class="footable-page-arrow"><a data-page="last" href="#last">' + ft.pageInfo.lastText + '</a></li>');
|
||||
}
|
||||
$nav.off('click', 'a[data-page]').on('click', 'a[data-page]', function (e) {
|
||||
e.preventDefault();
|
||||
var page = $(this).data('page');
|
||||
var newPage = info.currentPage;
|
||||
if (page === 'first') {
|
||||
newPage = 0;
|
||||
} else if (page === 'prev') {
|
||||
if (newPage > 0) newPage--;
|
||||
} else if (page === 'next') {
|
||||
if (newPage < info.pages.length - 1) newPage++;
|
||||
} else if (page === 'last') {
|
||||
newPage = info.pages.length - 1;
|
||||
} else if (page === 'limit-prev') {
|
||||
newPage = -1;
|
||||
var first = $nav.find('.footable-page:first a').data('page');
|
||||
p.createLimited($nav, info, first - info.limitNavigation);
|
||||
p.setPagingClasses($nav, info.currentPage, info.pages.length);
|
||||
} else if (page === 'limit-next') {
|
||||
newPage = -1;
|
||||
var last = $nav.find('.footable-page:last a').data('page');
|
||||
p.createLimited($nav, info, last + 1);
|
||||
p.setPagingClasses($nav, info.currentPage, info.pages.length);
|
||||
} else {
|
||||
newPage = page;
|
||||
}
|
||||
if (newPage >= 0){
|
||||
if (info.limit && info.currentPage != newPage){
|
||||
var start = newPage;
|
||||
while (start % info.limitNavigation !== 0){ start -= 1; }
|
||||
p.createLimited($nav, info, start);
|
||||
}
|
||||
p.paginate(ft, newPage);
|
||||
}
|
||||
});
|
||||
p.setPagingClasses($nav, info.currentPage, info.pages.length);
|
||||
};
|
||||
|
||||
p.createLimited = function(nav, info, start){
|
||||
start = start || 0;
|
||||
nav.find('li.footable-page').remove();
|
||||
var i, page,
|
||||
$prev = nav.find('li.footable-page-arrow > a[data-page="limit-prev"]').parent(),
|
||||
$next = nav.find('li.footable-page-arrow > a[data-page="limit-next"]').parent();
|
||||
for (i = info.pages.length - 1; i >=0 ; i--){
|
||||
page = info.pages[i];
|
||||
if (i >= start && i < start + info.limitNavigation && page.length > 0) {
|
||||
$prev.after('<li class="footable-page"><a data-page="' + i + '" href="#">' + (i + 1) + '</a></li>');
|
||||
}
|
||||
}
|
||||
if (start === 0){ $prev.hide(); }
|
||||
else { $prev.show(); }
|
||||
if (start + info.limitNavigation >= info.pages.length){ $next.hide(); }
|
||||
else { $next.show(); }
|
||||
};
|
||||
|
||||
p.paginate = function (ft, newPage) {
|
||||
var info = ft.pageInfo;
|
||||
if (info.currentPage !== newPage) {
|
||||
var $tbody = $(ft.table).find('> tbody');
|
||||
|
||||
//raise a pre-pagin event so that we can cancel the paging if needed
|
||||
var event = ft.raise('footable_paging', { page: newPage, size: info.pageSize });
|
||||
if (event && event.result === false) return;
|
||||
|
||||
p.fillPage(ft, $tbody, newPage);
|
||||
info.control.find('li').removeClass('active disabled');
|
||||
p.setPagingClasses(info.control, info.currentPage, info.pages.length);
|
||||
}
|
||||
};
|
||||
|
||||
p.setPagingClasses = function (nav, currentPage, pageCount) {
|
||||
nav.find('li.footable-page > a[data-page=' + currentPage + ']').parent().addClass('active');
|
||||
if (currentPage >= pageCount - 1) {
|
||||
nav.find('li.footable-page-arrow > a[data-page="next"]').parent().addClass('disabled');
|
||||
nav.find('li.footable-page-arrow > a[data-page="last"]').parent().addClass('disabled');
|
||||
}
|
||||
if (currentPage < 1) {
|
||||
nav.find('li.footable-page-arrow > a[data-page="first"]').parent().addClass('disabled');
|
||||
nav.find('li.footable-page-arrow > a[data-page="prev"]').parent().addClass('disabled');
|
||||
}
|
||||
};
|
||||
|
||||
p.fillPage = function (ft, tbody, pageNumber) {
|
||||
ft.pageInfo.currentPage = pageNumber;
|
||||
$(ft.table).data('currentPage', pageNumber);
|
||||
tbody.find('> tr').hide();
|
||||
$(ft.pageInfo.pages[pageNumber]).each(function () {
|
||||
p.showRow(this, ft);
|
||||
});
|
||||
ft.raise('footable_page_filled');
|
||||
};
|
||||
|
||||
p.showRow = function (row, ft) {
|
||||
var $row = $(row), $next = $row.next(), $table = $(ft.table);
|
||||
if ($table.hasClass('breakpoint') && $row.hasClass('footable-detail-show') && $next.hasClass('footable-row-detail')) {
|
||||
$row.add($next).show();
|
||||
ft.createOrUpdateDetailRow(row);
|
||||
}
|
||||
else $row.show();
|
||||
};
|
||||
}
|
||||
|
||||
w.footable.plugins.register(Paginate, defaults);
|
||||
|
||||
})(jQuery, window);
|
@ -0,0 +1,44 @@
|
||||
(function ($, w, undefined) {
|
||||
if (w.footable === undefined || w.foobox === null)
|
||||
throw new Error('Please check and make sure footable.js is included in the page and is loaded prior to this script.');
|
||||
|
||||
var defaults = {
|
||||
/*
|
||||
Plugin options here, example:
|
||||
|
||||
var defaults = {
|
||||
myPlugin: {
|
||||
enabled: true
|
||||
}
|
||||
};
|
||||
|
||||
This would allow you to access this option using ft.options.myPlugin.enabled
|
||||
*/
|
||||
};
|
||||
|
||||
function MyPlugin() {
|
||||
var p = this;
|
||||
p.name = 'Footable MyPlugin';
|
||||
p.init = function(ft) {
|
||||
$(ft.table).bind({
|
||||
/*
|
||||
Bind to relevant events here to modify/add functionality to Footable, example:
|
||||
|
||||
$(ft.table).bind({
|
||||
'footable_initialized': function(e){
|
||||
if (e.ft.options.myPlugin.enabled === true){
|
||||
alert('Hello World');
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
This would listen for the 'footable_initialized' event and when called check if the plugin is enabled
|
||||
and if it is alert 'Hello World' to the user.
|
||||
*/
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
w.footable.plugins.register(MyPlugin, defaults);
|
||||
|
||||
})(jQuery, window);
|
@ -0,0 +1,190 @@
|
||||
(function ($, w, undefined) {
|
||||
if (w.footable === undefined || w.footable === null)
|
||||
throw new Error('Please check and make sure footable.js is included in the page and is loaded prior to this script.');
|
||||
|
||||
var defaults = {
|
||||
sort: true,
|
||||
sorters: {
|
||||
alpha: function (a, b) {
|
||||
if (typeof(a) === 'string') { a = a.toLowerCase(); }
|
||||
if (typeof(b) === 'string') { b = b.toLowerCase(); }
|
||||
if (a === b) return 0;
|
||||
if (a < b) return -1;
|
||||
return 1;
|
||||
},
|
||||
numeric: function (a, b) {
|
||||
return a - b;
|
||||
}
|
||||
},
|
||||
classes: {
|
||||
sort: {
|
||||
sortable: 'footable-sortable',
|
||||
sorted: 'footable-sorted',
|
||||
descending: 'footable-sorted-desc',
|
||||
indicator: 'footable-sort-indicator'
|
||||
}
|
||||
},
|
||||
events: {
|
||||
sort: {
|
||||
sorting: 'footable_sorting',
|
||||
sorted: 'footable_sorted'
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
function Sort() {
|
||||
var p = this;
|
||||
p.name = 'Footable Sortable';
|
||||
p.init = function (ft) {
|
||||
p.footable = ft;
|
||||
if (ft.options.sort === true) {
|
||||
$(ft.table)
|
||||
.unbind('.sorting')
|
||||
.bind({
|
||||
'footable_initialized.sorting': function (e) {
|
||||
var $table = $(ft.table),
|
||||
$tbody = $table.find('> tbody'),
|
||||
cls = ft.options.classes.sort,
|
||||
column, $th;
|
||||
|
||||
if ($table.data('sort') === false) return;
|
||||
|
||||
$table.find('> thead > tr:last-child > th, > thead > tr:last-child > td').each(function (ec) {
|
||||
var $th = $(this), column = ft.columns[$th.index()];
|
||||
if (column.sort.ignore !== true && !$th.hasClass(cls.sortable)) {
|
||||
$th.addClass(cls.sortable);
|
||||
$('<span />').addClass(cls.indicator).appendTo($th);
|
||||
}
|
||||
});
|
||||
|
||||
$table.find('> thead > tr:last-child > th.' + cls.sortable + ', > thead > tr:last-child > td.' + cls.sortable).unbind('click.footable').bind('click.footable', function (ec) {
|
||||
ec.preventDefault();
|
||||
$th = $(this);
|
||||
var ascending = !$th.hasClass(cls.sorted);
|
||||
p.doSort($th.index(), ascending);
|
||||
return false;
|
||||
});
|
||||
|
||||
var didSomeSorting = false;
|
||||
for (var c in ft.columns) {
|
||||
column = ft.columns[c];
|
||||
if (column.sort.initial) {
|
||||
var ascending = (column.sort.initial !== 'descending');
|
||||
p.doSort(column.index, ascending);
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (didSomeSorting) {
|
||||
ft.bindToggleSelectors();
|
||||
}
|
||||
},
|
||||
'footable_redrawn.sorting': function(e) {
|
||||
var $table = $(ft.table),
|
||||
cls = ft.options.classes.sort;
|
||||
if ($table.data('sorted') >= 0) {
|
||||
$table.find('> thead > tr:last-child > th').each(function(i){
|
||||
var $th = $(this);
|
||||
if ($th.hasClass(cls.sorted) || $th.hasClass(cls.descending)) {
|
||||
p.doSort(i);
|
||||
return;
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
'footable_column_data.sorting': function (e) {
|
||||
var $th = $(e.column.th);
|
||||
e.column.data.sort = e.column.data.sort || {};
|
||||
e.column.data.sort.initial = $th.data('sort-initial') || false;
|
||||
e.column.data.sort.ignore = $th.data('sort-ignore') || false;
|
||||
e.column.data.sort.selector = $th.data('sort-selector') || null;
|
||||
|
||||
var match = $th.data('sort-match') || 0;
|
||||
if (match >= e.column.data.matches.length) match = 0;
|
||||
e.column.data.sort.match = e.column.data.matches[match];
|
||||
}
|
||||
})
|
||||
//save the sort object onto the table so we can access it later
|
||||
.data('footable-sort', p);
|
||||
}
|
||||
};
|
||||
|
||||
p.doSort = function(columnIndex, ascending) {
|
||||
var ft = p.footable;
|
||||
if ($(ft.table).data('sort') === false) return;
|
||||
|
||||
var $table = $(ft.table),
|
||||
$tbody = $table.find('> tbody'),
|
||||
column = ft.columns[columnIndex],
|
||||
$th = $table.find('> thead > tr:last-child > th:eq(' + columnIndex + ')'),
|
||||
cls = ft.options.classes.sort,
|
||||
evt = ft.options.events.sort;
|
||||
|
||||
ascending = (ascending === undefined) ? $th.hasClass(cls.sorted) :
|
||||
(ascending === 'toggle') ? !$th.hasClass(cls.sorted) : ascending;
|
||||
|
||||
if (column.sort.ignore === true) return true;
|
||||
|
||||
//raise a pre-sorting event so that we can cancel the sorting if needed
|
||||
var event = ft.raise(evt.sorting, { column: column, direction: ascending ? 'ASC' : 'DESC' });
|
||||
if (event && event.result === false) return;
|
||||
|
||||
$table.data('sorted', column.index);
|
||||
|
||||
$table.find('> thead > tr:last-child > th, > thead > tr:last-child > td').not($th).removeClass(cls.sorted + ' ' + cls.descending);
|
||||
|
||||
if (ascending === undefined) {
|
||||
ascending = $th.hasClass(cls.sorted);
|
||||
}
|
||||
|
||||
if (ascending) {
|
||||
$th.removeClass(cls.descending).addClass(cls.sorted);
|
||||
} else {
|
||||
$th.removeClass(cls.sorted).addClass(cls.descending);
|
||||
}
|
||||
|
||||
p.sort(ft, $tbody, column, ascending);
|
||||
|
||||
ft.bindToggleSelectors();
|
||||
ft.raise(evt.sorted, { column: column, direction: ascending ? 'ASC' : 'DESC' });
|
||||
};
|
||||
|
||||
p.rows = function (ft, tbody, column) {
|
||||
var rows = [];
|
||||
tbody.find('> tr').each(function () {
|
||||
var $row = $(this), $next = null;
|
||||
if ($row.hasClass(ft.options.classes.detail)) return true;
|
||||
if ($row.next().hasClass(ft.options.classes.detail)) {
|
||||
$next = $row.next().get(0);
|
||||
}
|
||||
var row = { 'row': $row, 'detail': $next };
|
||||
if (column !== undefined) {
|
||||
row.value = ft.parse(this.cells[column.sort.match], column);
|
||||
}
|
||||
rows.push(row);
|
||||
return true;
|
||||
}).detach();
|
||||
return rows;
|
||||
};
|
||||
|
||||
p.sort = function (ft, tbody, column, ascending) {
|
||||
var rows = p.rows(ft, tbody, column);
|
||||
var sorter = ft.options.sorters[column.type] || ft.options.sorters.alpha;
|
||||
rows.sort(function (a, b) {
|
||||
if (ascending) {
|
||||
return sorter(a.value, b.value);
|
||||
} else {
|
||||
return sorter(b.value, a.value);
|
||||
}
|
||||
});
|
||||
for (var j = 0; j < rows.length; j++) {
|
||||
tbody.append(rows[j].row);
|
||||
if (rows[j].detail !== null) {
|
||||
tbody.append(rows[j].detail);
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
w.footable.plugins.register(Sort, defaults);
|
||||
|
||||
})(jQuery, window);
|
@ -0,0 +1,57 @@
|
||||
(function ($, w, undefined) {
|
||||
if (w.footable === undefined || w.foobox === null)
|
||||
throw new Error('Please check and make sure footable.js is included in the page and is loaded prior to this script.');
|
||||
|
||||
var defaults = {
|
||||
striping: {
|
||||
enabled: true
|
||||
},
|
||||
classes: {
|
||||
striping: {
|
||||
odd: 'footable-odd',
|
||||
even: 'footable-even'
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
function Striping() {
|
||||
var p = this;
|
||||
p.name = 'Footable Striping';
|
||||
p.init = function (ft) {
|
||||
p.footable = ft;
|
||||
$(ft.table)
|
||||
.unbind('striping')
|
||||
.bind({
|
||||
'footable_initialized.striping footable_row_removed.striping footable_redrawn.striping footable_sorted.striping footable_filtered.striping': function () {
|
||||
|
||||
if ($(this).data('striping') === false) return;
|
||||
|
||||
p.setupStriping(ft);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
p.setupStriping = function (ft) {
|
||||
|
||||
var rowIndex = 0;
|
||||
$(ft.table).find('> tbody > tr:not(.footable-row-detail)').each(function () {
|
||||
|
||||
var $row = $(this);
|
||||
|
||||
//Clean off old classes
|
||||
$row.removeClass(ft.options.classes.striping.even).removeClass(ft.options.classes.striping.odd);
|
||||
|
||||
if (rowIndex % 2 === 0) {
|
||||
$row.addClass(ft.options.classes.striping.even);
|
||||
} else {
|
||||
$row.addClass(ft.options.classes.striping.odd);
|
||||
}
|
||||
|
||||
rowIndex++;
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
w.footable.plugins.register(Striping, defaults);
|
||||
|
||||
})(jQuery, window);
|
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
@ -0,0 +1,39 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Accordion
|
||||
========================================================================== */
|
||||
/* Sub-object: `uk-accordion-title`
|
||||
========================================================================== */
|
||||
.uk-accordion-title {
|
||||
margin-top: 0;
|
||||
margin-bottom: 15px;
|
||||
padding: 5px 15px;
|
||||
background: #f5f5f5;
|
||||
font-size: 18px;
|
||||
line-height: 24px;
|
||||
cursor: pointer;
|
||||
border: 1px solid #dddddd;
|
||||
border-radius: 4px;
|
||||
}
|
||||
/* Sub-object: `uk-accordion-content`
|
||||
========================================================================== */
|
||||
.uk-accordion-content {
|
||||
padding: 0 15px 15px 15px;
|
||||
}
|
||||
/*
|
||||
* Micro clearfix to make panels more robust
|
||||
*/
|
||||
.uk-accordion-content:before,
|
||||
.uk-accordion-content:after {
|
||||
content: "";
|
||||
display: table;
|
||||
}
|
||||
.uk-accordion-content:after {
|
||||
clear: both;
|
||||
}
|
||||
/*
|
||||
* Remove margin from the last-child
|
||||
*/
|
||||
.uk-accordion-content > :last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-accordion-title{margin-top:0;margin-bottom:15px;padding:5px 15px;background:#f5f5f5;font-size:18px;line-height:24px;cursor:pointer;border:1px solid #ddd;border-radius:4px}.uk-accordion-content{padding:0 15px 15px 15px}.uk-accordion-content:after,.uk-accordion-content:before{content:"";display:table}.uk-accordion-content:after{clear:both}.uk-accordion-content>:last-child{margin-bottom:0}
|
@ -0,0 +1,37 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Accordion
|
||||
========================================================================== */
|
||||
/* Sub-object: `uk-accordion-title`
|
||||
========================================================================== */
|
||||
.uk-accordion-title {
|
||||
margin-top: 0;
|
||||
margin-bottom: 15px;
|
||||
padding: 5px 15px;
|
||||
background: #eeeeee;
|
||||
font-size: 18px;
|
||||
line-height: 24px;
|
||||
cursor: pointer;
|
||||
}
|
||||
/* Sub-object: `uk-accordion-content`
|
||||
========================================================================== */
|
||||
.uk-accordion-content {
|
||||
padding: 0 15px 15px 15px;
|
||||
}
|
||||
/*
|
||||
* Micro clearfix to make panels more robust
|
||||
*/
|
||||
.uk-accordion-content:before,
|
||||
.uk-accordion-content:after {
|
||||
content: "";
|
||||
display: table;
|
||||
}
|
||||
.uk-accordion-content:after {
|
||||
clear: both;
|
||||
}
|
||||
/*
|
||||
* Remove margin from the last-child
|
||||
*/
|
||||
.uk-accordion-content > :last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
@ -0,0 +1,39 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Accordion
|
||||
========================================================================== */
|
||||
/* Sub-object: `uk-accordion-title`
|
||||
========================================================================== */
|
||||
.uk-accordion-title {
|
||||
margin-top: 0;
|
||||
margin-bottom: 15px;
|
||||
padding: 5px 15px;
|
||||
background: #f7f7f7;
|
||||
font-size: 18px;
|
||||
line-height: 24px;
|
||||
cursor: pointer;
|
||||
border: 1px solid #dddddd;
|
||||
border-radius: 4px;
|
||||
}
|
||||
/* Sub-object: `uk-accordion-content`
|
||||
========================================================================== */
|
||||
.uk-accordion-content {
|
||||
padding: 0 15px 15px 15px;
|
||||
}
|
||||
/*
|
||||
* Micro clearfix to make panels more robust
|
||||
*/
|
||||
.uk-accordion-content:before,
|
||||
.uk-accordion-content:after {
|
||||
content: "";
|
||||
display: table;
|
||||
}
|
||||
.uk-accordion-content:after {
|
||||
clear: both;
|
||||
}
|
||||
/*
|
||||
* Remove margin from the last-child
|
||||
*/
|
||||
.uk-accordion-content > :last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-accordion-title{margin-top:0;margin-bottom:15px;padding:5px 15px;background:#f7f7f7;font-size:18px;line-height:24px;cursor:pointer;border:1px solid #ddd;border-radius:4px}.uk-accordion-content{padding:0 15px 15px 15px}.uk-accordion-content:after,.uk-accordion-content:before{content:"";display:table}.uk-accordion-content:after{clear:both}.uk-accordion-content>:last-child{margin-bottom:0}
|
2
admin/compiler/com_componentbuilder_v2_1_0__J3/media/uikit/css/components/accordion.min.css
vendored
Normal file
2
admin/compiler/com_componentbuilder_v2_1_0__J3/media/uikit/css/components/accordion.min.css
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-accordion-title{margin-top:0;margin-bottom:15px;padding:5px 15px;background:#eee;font-size:18px;line-height:24px;cursor:pointer}.uk-accordion-content{padding:0 15px 15px 15px}.uk-accordion-content:after,.uk-accordion-content:before{content:"";display:table}.uk-accordion-content:after{clear:both}.uk-accordion-content>:last-child{margin-bottom:0}
|
@ -0,0 +1,52 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Autocomplete
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Container width fits its content
|
||||
* 2. Create position context
|
||||
* 3. Prevent `inline-block` consequences
|
||||
* 4. Remove the gap between the container and its child element
|
||||
*/
|
||||
.uk-autocomplete {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
/* 3 */
|
||||
max-width: 100%;
|
||||
/* 4 */
|
||||
vertical-align: middle;
|
||||
}
|
||||
/* Nav modifier `uk-nav-autocomplete`
|
||||
========================================================================== */
|
||||
/*
|
||||
* Items
|
||||
*/
|
||||
.uk-nav-autocomplete > li > a {
|
||||
color: #444444;
|
||||
}
|
||||
/*
|
||||
* Active
|
||||
* 1. Remove default focus style
|
||||
*/
|
||||
.uk-nav-autocomplete > li.uk-active > a {
|
||||
background: #00a8e6;
|
||||
color: #ffffff;
|
||||
/* 1 */
|
||||
outline: none;
|
||||
box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05);
|
||||
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
/*
|
||||
* Sub-object: `uk-nav-header`
|
||||
*/
|
||||
.uk-nav-autocomplete .uk-nav-header {
|
||||
color: #999999;
|
||||
}
|
||||
/*
|
||||
* Sub-object: `uk-nav-divider`
|
||||
*/
|
||||
.uk-nav-autocomplete .uk-nav-divider {
|
||||
border-top: 1px solid #dddddd;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-autocomplete{display:inline-block;position:relative;max-width:100%;vertical-align:middle}.uk-nav-autocomplete>li>a{color:#444}.uk-nav-autocomplete>li.uk-active>a{background:#00a8e6;color:#fff;outline:0;box-shadow:inset 0 0 5px rgba(0,0,0,.05);text-shadow:0 -1px 0 rgba(0,0,0,.1)}.uk-nav-autocomplete .uk-nav-header{color:#999}.uk-nav-autocomplete .uk-nav-divider{border-top:1px solid #ddd}
|
@ -0,0 +1,50 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Autocomplete
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Container width fits its content
|
||||
* 2. Create position context
|
||||
* 3. Prevent `inline-block` consequences
|
||||
* 4. Remove the gap between the container and its child element
|
||||
*/
|
||||
.uk-autocomplete {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
/* 3 */
|
||||
max-width: 100%;
|
||||
/* 4 */
|
||||
vertical-align: middle;
|
||||
}
|
||||
/* Nav modifier `uk-nav-autocomplete`
|
||||
========================================================================== */
|
||||
/*
|
||||
* Items
|
||||
*/
|
||||
.uk-nav-autocomplete > li > a {
|
||||
color: #444444;
|
||||
}
|
||||
/*
|
||||
* Active
|
||||
* 1. Remove default focus style
|
||||
*/
|
||||
.uk-nav-autocomplete > li.uk-active > a {
|
||||
background: #00a8e6;
|
||||
color: #ffffff;
|
||||
/* 1 */
|
||||
outline: none;
|
||||
}
|
||||
/*
|
||||
* Sub-object: `uk-nav-header`
|
||||
*/
|
||||
.uk-nav-autocomplete .uk-nav-header {
|
||||
color: #999999;
|
||||
}
|
||||
/*
|
||||
* Sub-object: `uk-nav-divider`
|
||||
*/
|
||||
.uk-nav-autocomplete .uk-nav-divider {
|
||||
border-top: 1px solid #dddddd;
|
||||
}
|
@ -0,0 +1,52 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Autocomplete
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Container width fits its content
|
||||
* 2. Create position context
|
||||
* 3. Prevent `inline-block` consequences
|
||||
* 4. Remove the gap between the container and its child element
|
||||
*/
|
||||
.uk-autocomplete {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
/* 3 */
|
||||
max-width: 100%;
|
||||
/* 4 */
|
||||
vertical-align: middle;
|
||||
}
|
||||
/* Nav modifier `uk-nav-autocomplete`
|
||||
========================================================================== */
|
||||
/*
|
||||
* Items
|
||||
*/
|
||||
.uk-nav-autocomplete > li > a {
|
||||
color: #444444;
|
||||
}
|
||||
/*
|
||||
* Active
|
||||
* 1. Remove default focus style
|
||||
*/
|
||||
.uk-nav-autocomplete > li.uk-active > a {
|
||||
background: #009dd8;
|
||||
color: #ffffff;
|
||||
/* 1 */
|
||||
outline: none;
|
||||
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2);
|
||||
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
/*
|
||||
* Sub-object: `uk-nav-header`
|
||||
*/
|
||||
.uk-nav-autocomplete .uk-nav-header {
|
||||
color: #999999;
|
||||
}
|
||||
/*
|
||||
* Sub-object: `uk-nav-divider`
|
||||
*/
|
||||
.uk-nav-autocomplete .uk-nav-divider {
|
||||
border-top: 1px solid #dddddd;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-autocomplete{display:inline-block;position:relative;max-width:100%;vertical-align:middle}.uk-nav-autocomplete>li>a{color:#444}.uk-nav-autocomplete>li.uk-active>a{background:#009dd8;color:#fff;outline:0;box-shadow:inset 0 2px 4px rgba(0,0,0,.2);text-shadow:0 -1px 0 rgba(0,0,0,.2)}.uk-nav-autocomplete .uk-nav-header{color:#999}.uk-nav-autocomplete .uk-nav-divider{border-top:1px solid #ddd}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-autocomplete{display:inline-block;position:relative;max-width:100%;vertical-align:middle}.uk-nav-autocomplete>li>a{color:#444}.uk-nav-autocomplete>li.uk-active>a{background:#00a8e6;color:#fff;outline:0}.uk-nav-autocomplete .uk-nav-header{color:#999}.uk-nav-autocomplete .uk-nav-divider{border-top:1px solid #ddd}
|
@ -0,0 +1,129 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Datepicker
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Highest z-index
|
||||
* 2. Reset dropdown width
|
||||
* 3. Set animation
|
||||
* 4. Needed for scale animation
|
||||
*/
|
||||
.uk-datepicker {
|
||||
/* 1 */
|
||||
z-index: 1050;
|
||||
/* 2 */
|
||||
width: auto;
|
||||
/* 3 */
|
||||
-webkit-animation: uk-fade 0.2s ease-in-out;
|
||||
animation: uk-fade 0.2s ease-in-out;
|
||||
/* 4 */
|
||||
-webkit-transform-origin: 0 0;
|
||||
transform-origin: 0 0;
|
||||
}
|
||||
/* Sub-object: `uk-datepicker-nav`
|
||||
========================================================================== */
|
||||
.uk-datepicker-nav {
|
||||
margin-bottom: 15px;
|
||||
text-align: center;
|
||||
line-height: 20px;
|
||||
}
|
||||
/*
|
||||
* Micro clearfix
|
||||
*/
|
||||
.uk-datepicker-nav:before,
|
||||
.uk-datepicker-nav:after {
|
||||
content: "";
|
||||
display: table;
|
||||
}
|
||||
.uk-datepicker-nav:after {
|
||||
clear: both;
|
||||
}
|
||||
/*
|
||||
* Previous and next navigation
|
||||
*/
|
||||
.uk-datepicker-nav a {
|
||||
color: #444444;
|
||||
text-decoration: none;
|
||||
}
|
||||
.uk-datepicker-nav a:hover {
|
||||
color: #444444;
|
||||
}
|
||||
.uk-datepicker-previous {
|
||||
float: left;
|
||||
}
|
||||
.uk-datepicker-next {
|
||||
float: right;
|
||||
}
|
||||
.uk-datepicker-previous:after,
|
||||
.uk-datepicker-next:after {
|
||||
width: 20px;
|
||||
font-family: FontAwesome;
|
||||
}
|
||||
.uk-datepicker-previous:after {
|
||||
content: "\f053";
|
||||
}
|
||||
.uk-datepicker-next:after {
|
||||
content: "\f054";
|
||||
}
|
||||
/* Sub-object: `uk-datepicker-heading`
|
||||
========================================================================== */
|
||||
/* Sub-object: `uk-datepicker-table`
|
||||
========================================================================== */
|
||||
/* Block element behavior */
|
||||
.uk-datepicker-table {
|
||||
width: 100%;
|
||||
}
|
||||
.uk-datepicker-table th,
|
||||
.uk-datepicker-table td {
|
||||
padding: 2px;
|
||||
}
|
||||
.uk-datepicker-table th {
|
||||
font-size: 12px;
|
||||
}
|
||||
/*
|
||||
* Item
|
||||
*/
|
||||
.uk-datepicker-table a {
|
||||
display: block;
|
||||
width: 26px;
|
||||
line-height: 24px;
|
||||
text-align: center;
|
||||
color: #444444;
|
||||
text-decoration: none;
|
||||
border: 1px solid transparent;
|
||||
border-radius: 4px;
|
||||
}
|
||||
/*
|
||||
* Sub-object: `uk-datepicker-table-muted`
|
||||
*/
|
||||
a.uk-datepicker-table-muted {
|
||||
color: #999999;
|
||||
}
|
||||
/*
|
||||
* Hover
|
||||
* 1. Apply hover style also to focus state
|
||||
* 2. Remove default focus style
|
||||
*/
|
||||
.uk-datepicker-table a:hover,
|
||||
.uk-datepicker-table a:focus {
|
||||
background-color: #fafafa;
|
||||
color: #444444;
|
||||
/* 2 */
|
||||
outline: none;
|
||||
border-color: rgba(0, 0, 0, 0.16);
|
||||
text-shadow: 0 1px 0 #ffffff;
|
||||
}
|
||||
/* OnClick */
|
||||
.uk-datepicker-table a:active {
|
||||
background-color: #eeeeee;
|
||||
color: #444444;
|
||||
}
|
||||
/*
|
||||
* Active
|
||||
*/
|
||||
.uk-datepicker-table a.uk-active {
|
||||
background: #00a8e6;
|
||||
color: #ffffff;
|
||||
box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05);
|
||||
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.1);
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-datepicker{z-index:1050;width:auto;-webkit-animation:uk-fade .2s ease-in-out;animation:uk-fade .2s ease-in-out;-webkit-transform-origin:0 0;transform-origin:0 0}.uk-datepicker-nav{margin-bottom:15px;text-align:center;line-height:20px}.uk-datepicker-nav:after,.uk-datepicker-nav:before{content:"";display:table}.uk-datepicker-nav:after{clear:both}.uk-datepicker-nav a{color:#444;text-decoration:none}.uk-datepicker-nav a:hover{color:#444}.uk-datepicker-previous{float:left}.uk-datepicker-next{float:right}.uk-datepicker-next:after,.uk-datepicker-previous:after{width:20px;font-family:FontAwesome}.uk-datepicker-previous:after{content:"\f053"}.uk-datepicker-next:after{content:"\f054"}.uk-datepicker-table{width:100%}.uk-datepicker-table td,.uk-datepicker-table th{padding:2px}.uk-datepicker-table th{font-size:12px}.uk-datepicker-table a{display:block;width:26px;line-height:24px;text-align:center;color:#444;text-decoration:none;border:1px solid transparent;border-radius:4px}a.uk-datepicker-table-muted{color:#999}.uk-datepicker-table a:focus,.uk-datepicker-table a:hover{background-color:#fafafa;color:#444;outline:0;border-color:rgba(0,0,0,.16);text-shadow:0 1px 0 #fff}.uk-datepicker-table a:active{background-color:#eee;color:#444}.uk-datepicker-table a.uk-active{background:#00a8e6;color:#fff;box-shadow:inset 0 0 5px rgba(0,0,0,.05);text-shadow:0 -1px 0 rgba(0,0,0,.1)}
|
@ -0,0 +1,123 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Datepicker
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Highest z-index
|
||||
* 2. Reset dropdown width
|
||||
* 3. Set animation
|
||||
* 4. Needed for scale animation
|
||||
*/
|
||||
.uk-datepicker {
|
||||
/* 1 */
|
||||
z-index: 1050;
|
||||
/* 2 */
|
||||
width: auto;
|
||||
/* 3 */
|
||||
-webkit-animation: uk-fade 0.2s ease-in-out;
|
||||
animation: uk-fade 0.2s ease-in-out;
|
||||
/* 4 */
|
||||
-webkit-transform-origin: 0 0;
|
||||
transform-origin: 0 0;
|
||||
}
|
||||
/* Sub-object: `uk-datepicker-nav`
|
||||
========================================================================== */
|
||||
.uk-datepicker-nav {
|
||||
margin-bottom: 15px;
|
||||
text-align: center;
|
||||
line-height: 20px;
|
||||
}
|
||||
/*
|
||||
* Micro clearfix
|
||||
*/
|
||||
.uk-datepicker-nav:before,
|
||||
.uk-datepicker-nav:after {
|
||||
content: "";
|
||||
display: table;
|
||||
}
|
||||
.uk-datepicker-nav:after {
|
||||
clear: both;
|
||||
}
|
||||
/*
|
||||
* Previous and next navigation
|
||||
*/
|
||||
.uk-datepicker-nav a {
|
||||
color: #444444;
|
||||
text-decoration: none;
|
||||
}
|
||||
.uk-datepicker-nav a:hover {
|
||||
color: #444444;
|
||||
}
|
||||
.uk-datepicker-previous {
|
||||
float: left;
|
||||
}
|
||||
.uk-datepicker-next {
|
||||
float: right;
|
||||
}
|
||||
.uk-datepicker-previous:after,
|
||||
.uk-datepicker-next:after {
|
||||
width: 20px;
|
||||
font-family: FontAwesome;
|
||||
}
|
||||
.uk-datepicker-previous:after {
|
||||
content: "\f053";
|
||||
}
|
||||
.uk-datepicker-next:after {
|
||||
content: "\f054";
|
||||
}
|
||||
/* Sub-object: `uk-datepicker-heading`
|
||||
========================================================================== */
|
||||
/* Sub-object: `uk-datepicker-table`
|
||||
========================================================================== */
|
||||
/* Block element behavior */
|
||||
.uk-datepicker-table {
|
||||
width: 100%;
|
||||
}
|
||||
.uk-datepicker-table th,
|
||||
.uk-datepicker-table td {
|
||||
padding: 2px;
|
||||
}
|
||||
.uk-datepicker-table th {
|
||||
font-size: 12px;
|
||||
}
|
||||
/*
|
||||
* Item
|
||||
*/
|
||||
.uk-datepicker-table a {
|
||||
display: block;
|
||||
width: 26px;
|
||||
line-height: 24px;
|
||||
text-align: center;
|
||||
color: #444444;
|
||||
text-decoration: none;
|
||||
}
|
||||
/*
|
||||
* Sub-object: `uk-datepicker-table-muted`
|
||||
*/
|
||||
a.uk-datepicker-table-muted {
|
||||
color: #999999;
|
||||
}
|
||||
/*
|
||||
* Hover
|
||||
* 1. Apply hover style also to focus state
|
||||
* 2. Remove default focus style
|
||||
*/
|
||||
.uk-datepicker-table a:hover,
|
||||
.uk-datepicker-table a:focus {
|
||||
background-color: #dddddd;
|
||||
color: #444444;
|
||||
/* 2 */
|
||||
outline: none;
|
||||
}
|
||||
/* OnClick */
|
||||
.uk-datepicker-table a:active {
|
||||
background-color: #cccccc;
|
||||
color: #444444;
|
||||
}
|
||||
/*
|
||||
* Active
|
||||
*/
|
||||
.uk-datepicker-table a.uk-active {
|
||||
background: #00a8e6;
|
||||
color: #ffffff;
|
||||
}
|
@ -0,0 +1,139 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Datepicker
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Highest z-index
|
||||
* 2. Reset dropdown width
|
||||
* 3. Set animation
|
||||
* 4. Needed for scale animation
|
||||
*/
|
||||
.uk-datepicker {
|
||||
/* 1 */
|
||||
z-index: 1050;
|
||||
/* 2 */
|
||||
width: auto;
|
||||
/* 3 */
|
||||
-webkit-animation: uk-fade 0.2s ease-in-out;
|
||||
animation: uk-fade 0.2s ease-in-out;
|
||||
/* 4 */
|
||||
-webkit-transform-origin: 0 0;
|
||||
transform-origin: 0 0;
|
||||
}
|
||||
/* Sub-object: `uk-datepicker-nav`
|
||||
========================================================================== */
|
||||
.uk-datepicker-nav {
|
||||
margin-bottom: 15px;
|
||||
text-align: center;
|
||||
line-height: 20px;
|
||||
}
|
||||
/*
|
||||
* Micro clearfix
|
||||
*/
|
||||
.uk-datepicker-nav:before,
|
||||
.uk-datepicker-nav:after {
|
||||
content: "";
|
||||
display: table;
|
||||
}
|
||||
.uk-datepicker-nav:after {
|
||||
clear: both;
|
||||
}
|
||||
/*
|
||||
* Previous and next navigation
|
||||
*/
|
||||
.uk-datepicker-nav a {
|
||||
color: #444444;
|
||||
text-decoration: none;
|
||||
}
|
||||
.uk-datepicker-nav a:hover {
|
||||
color: #444444;
|
||||
}
|
||||
.uk-datepicker-previous {
|
||||
float: left;
|
||||
}
|
||||
.uk-datepicker-next {
|
||||
float: right;
|
||||
}
|
||||
.uk-datepicker-previous:after,
|
||||
.uk-datepicker-next:after {
|
||||
width: 20px;
|
||||
font-family: FontAwesome;
|
||||
}
|
||||
.uk-datepicker-previous:after {
|
||||
content: "\f053";
|
||||
}
|
||||
.uk-datepicker-next:after {
|
||||
content: "\f054";
|
||||
}
|
||||
/* Sub-object: `uk-datepicker-heading`
|
||||
========================================================================== */
|
||||
/* Sub-object: `uk-datepicker-table`
|
||||
========================================================================== */
|
||||
/* Block element behavior */
|
||||
.uk-datepicker-table {
|
||||
width: 100%;
|
||||
}
|
||||
.uk-datepicker-table th,
|
||||
.uk-datepicker-table td {
|
||||
padding: 2px;
|
||||
}
|
||||
.uk-datepicker-table th {
|
||||
font-size: 12px;
|
||||
}
|
||||
/*
|
||||
* Item
|
||||
*/
|
||||
.uk-datepicker-table a {
|
||||
display: block;
|
||||
width: 26px;
|
||||
line-height: 24px;
|
||||
text-align: center;
|
||||
color: #444444;
|
||||
text-decoration: none;
|
||||
border: 1px solid transparent;
|
||||
border-radius: 4px;
|
||||
background-origin: border-box;
|
||||
}
|
||||
/*
|
||||
* Sub-object: `uk-datepicker-table-muted`
|
||||
*/
|
||||
a.uk-datepicker-table-muted {
|
||||
color: #999999;
|
||||
}
|
||||
/*
|
||||
* Hover
|
||||
* 1. Apply hover style also to focus state
|
||||
* 2. Remove default focus style
|
||||
*/
|
||||
.uk-datepicker-table a:hover,
|
||||
.uk-datepicker-table a:focus {
|
||||
background-color: #fafafa;
|
||||
color: #444444;
|
||||
/* 2 */
|
||||
outline: none;
|
||||
border-color: rgba(0, 0, 0, 0.2);
|
||||
border-bottom-color: rgba(0, 0, 0, 0.3);
|
||||
text-shadow: 0 1px 0 #ffffff;
|
||||
}
|
||||
/* OnClick */
|
||||
.uk-datepicker-table a:active {
|
||||
background-color: #f5f5f5;
|
||||
color: #444444;
|
||||
border-color: rgba(0, 0, 0, 0.2);
|
||||
border-top-color: rgba(0, 0, 0, 0.3);
|
||||
background-image: none;
|
||||
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
/*
|
||||
* Active
|
||||
*/
|
||||
.uk-datepicker-table a.uk-active {
|
||||
background: #009dd8;
|
||||
color: #ffffff;
|
||||
border: 1px solid rgba(0, 0, 0, 0.2);
|
||||
border-bottom-color: rgba(0, 0, 0, 0.4);
|
||||
background-origin: border-box;
|
||||
background-image: -webkit-linear-gradient(top, #00b4f5, #008dc5);
|
||||
background-image: linear-gradient(to bottom, #00b4f5, #008dc5);
|
||||
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-datepicker{z-index:1050;width:auto;-webkit-animation:uk-fade .2s ease-in-out;animation:uk-fade .2s ease-in-out;-webkit-transform-origin:0 0;transform-origin:0 0}.uk-datepicker-nav{margin-bottom:15px;text-align:center;line-height:20px}.uk-datepicker-nav:after,.uk-datepicker-nav:before{content:"";display:table}.uk-datepicker-nav:after{clear:both}.uk-datepicker-nav a{color:#444;text-decoration:none}.uk-datepicker-nav a:hover{color:#444}.uk-datepicker-previous{float:left}.uk-datepicker-next{float:right}.uk-datepicker-next:after,.uk-datepicker-previous:after{width:20px;font-family:FontAwesome}.uk-datepicker-previous:after{content:"\f053"}.uk-datepicker-next:after{content:"\f054"}.uk-datepicker-table{width:100%}.uk-datepicker-table td,.uk-datepicker-table th{padding:2px}.uk-datepicker-table th{font-size:12px}.uk-datepicker-table a{display:block;width:26px;line-height:24px;text-align:center;color:#444;text-decoration:none;border:1px solid transparent;border-radius:4px;background-origin:border-box}a.uk-datepicker-table-muted{color:#999}.uk-datepicker-table a:focus,.uk-datepicker-table a:hover{background-color:#fafafa;color:#444;outline:0;border-color:rgba(0,0,0,.2);border-bottom-color:rgba(0,0,0,.3);text-shadow:0 1px 0 #fff}.uk-datepicker-table a:active{background-color:#f5f5f5;color:#444;border-color:rgba(0,0,0,.2);border-top-color:rgba(0,0,0,.3);background-image:none;box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.uk-datepicker-table a.uk-active{background:#009dd8;color:#fff;border:1px solid rgba(0,0,0,.2);border-bottom-color:rgba(0,0,0,.4);background-origin:border-box;background-image:-webkit-linear-gradient(top,#00b4f5,#008dc5);background-image:linear-gradient(to bottom,#00b4f5,#008dc5);text-shadow:0 -1px 0 rgba(0,0,0,.2)}
|
2
admin/compiler/com_componentbuilder_v2_1_0__J3/media/uikit/css/components/datepicker.min.css
vendored
Normal file
2
admin/compiler/com_componentbuilder_v2_1_0__J3/media/uikit/css/components/datepicker.min.css
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-datepicker{z-index:1050;width:auto;-webkit-animation:uk-fade .2s ease-in-out;animation:uk-fade .2s ease-in-out;-webkit-transform-origin:0 0;transform-origin:0 0}.uk-datepicker-nav{margin-bottom:15px;text-align:center;line-height:20px}.uk-datepicker-nav:after,.uk-datepicker-nav:before{content:"";display:table}.uk-datepicker-nav:after{clear:both}.uk-datepicker-nav a{color:#444;text-decoration:none}.uk-datepicker-nav a:hover{color:#444}.uk-datepicker-previous{float:left}.uk-datepicker-next{float:right}.uk-datepicker-next:after,.uk-datepicker-previous:after{width:20px;font-family:FontAwesome}.uk-datepicker-previous:after{content:"\f053"}.uk-datepicker-next:after{content:"\f054"}.uk-datepicker-table{width:100%}.uk-datepicker-table td,.uk-datepicker-table th{padding:2px}.uk-datepicker-table th{font-size:12px}.uk-datepicker-table a{display:block;width:26px;line-height:24px;text-align:center;color:#444;text-decoration:none}a.uk-datepicker-table-muted{color:#999}.uk-datepicker-table a:focus,.uk-datepicker-table a:hover{background-color:#ddd;color:#444;outline:0}.uk-datepicker-table a:active{background-color:#ccc;color:#444}.uk-datepicker-table a.uk-active{background:#00a8e6;color:#fff}
|
@ -0,0 +1,129 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Dotnav
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Gutter
|
||||
* 2. Remove default list style
|
||||
*/
|
||||
.uk-dotnav {
|
||||
display: -ms-flexbox;
|
||||
display: -webkit-flex;
|
||||
display: flex;
|
||||
-ms-flex-wrap: wrap;
|
||||
-webkit-flex-wrap: wrap;
|
||||
flex-wrap: wrap;
|
||||
/* 1 */
|
||||
margin-left: -15px;
|
||||
margin-top: -15px;
|
||||
/* 2 */
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
}
|
||||
/*
|
||||
* 1. Space is allocated solely based on content dimensions
|
||||
* 2. Horizontal gutter is using `padding` so `uk-width-*` classes can be applied
|
||||
*/
|
||||
.uk-dotnav > * {
|
||||
/* 1 */
|
||||
-ms-flex: none;
|
||||
-webkit-flex: none;
|
||||
flex: none;
|
||||
/* 2 */
|
||||
padding-left: 15px;
|
||||
margin-top: 15px;
|
||||
}
|
||||
/*
|
||||
* DEPRECATED IE9 Support
|
||||
*/
|
||||
.uk-dotnav:before,
|
||||
.uk-dotnav:after {
|
||||
content: "";
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
}
|
||||
.uk-dotnav:after {
|
||||
clear: both;
|
||||
}
|
||||
.uk-dotnav > * {
|
||||
float: left;
|
||||
}
|
||||
/* Items
|
||||
========================================================================== */
|
||||
/*
|
||||
* Items
|
||||
* 1. Hide text if present
|
||||
*/
|
||||
.uk-dotnav > * > * {
|
||||
display: block;
|
||||
-moz-box-sizing: content-box;
|
||||
box-sizing: content-box;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
border-radius: 50%;
|
||||
background: rgba(50, 50, 50, 0.1);
|
||||
/* 1 */
|
||||
text-indent: 100%;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
-webkit-transition: all 0.2s ease-in-out;
|
||||
transition: all 0.2s ease-in-out;
|
||||
}
|
||||
/*
|
||||
* Hover
|
||||
* 1. Apply hover style also to focus state
|
||||
* 2. Remove default focus style
|
||||
*/
|
||||
.uk-dotnav > * > :hover,
|
||||
.uk-dotnav > * > :focus {
|
||||
background: rgba(50, 50, 50, 0.4);
|
||||
/* 2 */
|
||||
outline: none;
|
||||
}
|
||||
/* OnClick */
|
||||
.uk-dotnav > * > :active {
|
||||
background: rgba(50, 50, 50, 0.6);
|
||||
}
|
||||
/* Active */
|
||||
.uk-dotnav > .uk-active > * {
|
||||
background: rgba(50, 50, 50, 0.4);
|
||||
-webkit-transform: scale(1.3);
|
||||
transform: scale(1.3);
|
||||
}
|
||||
/* Modifier: `uk-dotnav-contrast`
|
||||
========================================================================== */
|
||||
.uk-dotnav-contrast > * > * {
|
||||
background: rgba(255, 255, 255, 0.4);
|
||||
}
|
||||
/*
|
||||
* Hover
|
||||
* 1. Apply hover style also to focus state
|
||||
*/
|
||||
.uk-dotnav-contrast > * > :hover,
|
||||
.uk-dotnav-contrast > * > :focus {
|
||||
background: rgba(255, 255, 255, 0.7);
|
||||
}
|
||||
/* OnClick */
|
||||
.uk-dotnav-contrast > * > :active {
|
||||
background: rgba(255, 255, 255, 0.9);
|
||||
}
|
||||
/* Active */
|
||||
.uk-dotnav-contrast > .uk-active > * {
|
||||
background: rgba(255, 255, 255, 0.9);
|
||||
}
|
||||
/* Modifier: 'uk-dotnav-vertical'
|
||||
========================================================================== */
|
||||
/*
|
||||
* DEPRECATED
|
||||
*/
|
||||
.uk-dotnav-vertical {
|
||||
-ms-flex-direction: column;
|
||||
-webkit-flex-direction: column;
|
||||
flex-direction: column;
|
||||
}
|
||||
/*
|
||||
* DEPRECATED IE9 Support
|
||||
*/
|
||||
.uk-dotnav-vertical > * {
|
||||
float: none;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-dotnav{display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin-left:-15px;margin-top:-15px;padding:0;list-style:none}.uk-dotnav>*{-ms-flex:none;-webkit-flex:none;flex:none;padding-left:15px;margin-top:15px}.uk-dotnav:after,.uk-dotnav:before{content:"";display:block;overflow:hidden}.uk-dotnav:after{clear:both}.uk-dotnav>*{float:left}.uk-dotnav>*>*{display:block;-moz-box-sizing:content-box;box-sizing:content-box;width:20px;height:20px;border-radius:50%;background:rgba(50,50,50,.1);text-indent:100%;overflow:hidden;white-space:nowrap;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.uk-dotnav>*>:focus,.uk-dotnav>*>:hover{background:rgba(50,50,50,.4);outline:0}.uk-dotnav>*>:active{background:rgba(50,50,50,.6)}.uk-dotnav>.uk-active>*{background:rgba(50,50,50,.4);-webkit-transform:scale(1.3);transform:scale(1.3)}.uk-dotnav-contrast>*>*{background:rgba(255,255,255,.4)}.uk-dotnav-contrast>*>:focus,.uk-dotnav-contrast>*>:hover{background:rgba(255,255,255,.7)}.uk-dotnav-contrast>*>:active{background:rgba(255,255,255,.9)}.uk-dotnav-contrast>.uk-active>*{background:rgba(255,255,255,.9)}.uk-dotnav-vertical{-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column}.uk-dotnav-vertical>*{float:none}
|
@ -0,0 +1,125 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Dotnav
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Gutter
|
||||
* 2. Remove default list style
|
||||
*/
|
||||
.uk-dotnav {
|
||||
display: -ms-flexbox;
|
||||
display: -webkit-flex;
|
||||
display: flex;
|
||||
-ms-flex-wrap: wrap;
|
||||
-webkit-flex-wrap: wrap;
|
||||
flex-wrap: wrap;
|
||||
/* 1 */
|
||||
margin-left: -15px;
|
||||
margin-top: -15px;
|
||||
/* 2 */
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
}
|
||||
/*
|
||||
* 1. Space is allocated solely based on content dimensions
|
||||
* 2. Horizontal gutter is using `padding` so `uk-width-*` classes can be applied
|
||||
*/
|
||||
.uk-dotnav > * {
|
||||
/* 1 */
|
||||
-ms-flex: none;
|
||||
-webkit-flex: none;
|
||||
flex: none;
|
||||
/* 2 */
|
||||
padding-left: 15px;
|
||||
margin-top: 15px;
|
||||
}
|
||||
/*
|
||||
* DEPRECATED IE9 Support
|
||||
*/
|
||||
.uk-dotnav:before,
|
||||
.uk-dotnav:after {
|
||||
content: "";
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
}
|
||||
.uk-dotnav:after {
|
||||
clear: both;
|
||||
}
|
||||
.uk-dotnav > * {
|
||||
float: left;
|
||||
}
|
||||
/* Items
|
||||
========================================================================== */
|
||||
/*
|
||||
* Items
|
||||
* 1. Hide text if present
|
||||
*/
|
||||
.uk-dotnav > * > * {
|
||||
display: block;
|
||||
-moz-box-sizing: content-box;
|
||||
box-sizing: content-box;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
border-radius: 50%;
|
||||
background: rgba(50, 50, 50, 0.1);
|
||||
/* 1 */
|
||||
text-indent: 100%;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
}
|
||||
/*
|
||||
* Hover
|
||||
* 1. Apply hover style also to focus state
|
||||
* 2. Remove default focus style
|
||||
*/
|
||||
.uk-dotnav > * > :hover,
|
||||
.uk-dotnav > * > :focus {
|
||||
background: rgba(50, 50, 50, 0.4);
|
||||
/* 2 */
|
||||
outline: none;
|
||||
}
|
||||
/* OnClick */
|
||||
.uk-dotnav > * > :active {
|
||||
background: rgba(50, 50, 50, 0.6);
|
||||
}
|
||||
/* Active */
|
||||
.uk-dotnav > .uk-active > * {
|
||||
background: rgba(50, 50, 50, 0.4);
|
||||
}
|
||||
/* Modifier: `uk-dotnav-contrast`
|
||||
========================================================================== */
|
||||
.uk-dotnav-contrast > * > * {
|
||||
background: rgba(255, 255, 255, 0.4);
|
||||
}
|
||||
/*
|
||||
* Hover
|
||||
* 1. Apply hover style also to focus state
|
||||
*/
|
||||
.uk-dotnav-contrast > * > :hover,
|
||||
.uk-dotnav-contrast > * > :focus {
|
||||
background: rgba(255, 255, 255, 0.7);
|
||||
}
|
||||
/* OnClick */
|
||||
.uk-dotnav-contrast > * > :active {
|
||||
background: rgba(255, 255, 255, 0.9);
|
||||
}
|
||||
/* Active */
|
||||
.uk-dotnav-contrast > .uk-active > * {
|
||||
background: rgba(255, 255, 255, 0.9);
|
||||
}
|
||||
/* Modifier: 'uk-dotnav-vertical'
|
||||
========================================================================== */
|
||||
/*
|
||||
* DEPRECATED
|
||||
*/
|
||||
.uk-dotnav-vertical {
|
||||
-ms-flex-direction: column;
|
||||
-webkit-flex-direction: column;
|
||||
flex-direction: column;
|
||||
}
|
||||
/*
|
||||
* DEPRECATED IE9 Support
|
||||
*/
|
||||
.uk-dotnav-vertical > * {
|
||||
float: none;
|
||||
}
|
@ -0,0 +1,129 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Dotnav
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Gutter
|
||||
* 2. Remove default list style
|
||||
*/
|
||||
.uk-dotnav {
|
||||
display: -ms-flexbox;
|
||||
display: -webkit-flex;
|
||||
display: flex;
|
||||
-ms-flex-wrap: wrap;
|
||||
-webkit-flex-wrap: wrap;
|
||||
flex-wrap: wrap;
|
||||
/* 1 */
|
||||
margin-left: -15px;
|
||||
margin-top: -15px;
|
||||
/* 2 */
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
}
|
||||
/*
|
||||
* 1. Space is allocated solely based on content dimensions
|
||||
* 2. Horizontal gutter is using `padding` so `uk-width-*` classes can be applied
|
||||
*/
|
||||
.uk-dotnav > * {
|
||||
/* 1 */
|
||||
-ms-flex: none;
|
||||
-webkit-flex: none;
|
||||
flex: none;
|
||||
/* 2 */
|
||||
padding-left: 15px;
|
||||
margin-top: 15px;
|
||||
}
|
||||
/*
|
||||
* DEPRECATED IE9 Support
|
||||
*/
|
||||
.uk-dotnav:before,
|
||||
.uk-dotnav:after {
|
||||
content: "";
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
}
|
||||
.uk-dotnav:after {
|
||||
clear: both;
|
||||
}
|
||||
.uk-dotnav > * {
|
||||
float: left;
|
||||
}
|
||||
/* Items
|
||||
========================================================================== */
|
||||
/*
|
||||
* Items
|
||||
* 1. Hide text if present
|
||||
*/
|
||||
.uk-dotnav > * > * {
|
||||
display: block;
|
||||
-moz-box-sizing: content-box;
|
||||
box-sizing: content-box;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
border-radius: 50%;
|
||||
background: rgba(50, 50, 50, 0.1);
|
||||
/* 1 */
|
||||
text-indent: 100%;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
-webkit-transition: all 0.2s ease-in-out;
|
||||
transition: all 0.2s ease-in-out;
|
||||
}
|
||||
/*
|
||||
* Hover
|
||||
* 1. Apply hover style also to focus state
|
||||
* 2. Remove default focus style
|
||||
*/
|
||||
.uk-dotnav > * > :hover,
|
||||
.uk-dotnav > * > :focus {
|
||||
background: rgba(50, 50, 50, 0.4);
|
||||
/* 2 */
|
||||
outline: none;
|
||||
}
|
||||
/* OnClick */
|
||||
.uk-dotnav > * > :active {
|
||||
background: rgba(50, 50, 50, 0.6);
|
||||
}
|
||||
/* Active */
|
||||
.uk-dotnav > .uk-active > * {
|
||||
background: rgba(50, 50, 50, 0.4);
|
||||
-webkit-transform: scale(1.3);
|
||||
transform: scale(1.3);
|
||||
}
|
||||
/* Modifier: `uk-dotnav-contrast`
|
||||
========================================================================== */
|
||||
.uk-dotnav-contrast > * > * {
|
||||
background: rgba(255, 255, 255, 0.4);
|
||||
}
|
||||
/*
|
||||
* Hover
|
||||
* 1. Apply hover style also to focus state
|
||||
*/
|
||||
.uk-dotnav-contrast > * > :hover,
|
||||
.uk-dotnav-contrast > * > :focus {
|
||||
background: rgba(255, 255, 255, 0.7);
|
||||
}
|
||||
/* OnClick */
|
||||
.uk-dotnav-contrast > * > :active {
|
||||
background: rgba(255, 255, 255, 0.9);
|
||||
}
|
||||
/* Active */
|
||||
.uk-dotnav-contrast > .uk-active > * {
|
||||
background: rgba(255, 255, 255, 0.9);
|
||||
}
|
||||
/* Modifier: 'uk-dotnav-vertical'
|
||||
========================================================================== */
|
||||
/*
|
||||
* DEPRECATED
|
||||
*/
|
||||
.uk-dotnav-vertical {
|
||||
-ms-flex-direction: column;
|
||||
-webkit-flex-direction: column;
|
||||
flex-direction: column;
|
||||
}
|
||||
/*
|
||||
* DEPRECATED IE9 Support
|
||||
*/
|
||||
.uk-dotnav-vertical > * {
|
||||
float: none;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-dotnav{display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin-left:-15px;margin-top:-15px;padding:0;list-style:none}.uk-dotnav>*{-ms-flex:none;-webkit-flex:none;flex:none;padding-left:15px;margin-top:15px}.uk-dotnav:after,.uk-dotnav:before{content:"";display:block;overflow:hidden}.uk-dotnav:after{clear:both}.uk-dotnav>*{float:left}.uk-dotnav>*>*{display:block;-moz-box-sizing:content-box;box-sizing:content-box;width:20px;height:20px;border-radius:50%;background:rgba(50,50,50,.1);text-indent:100%;overflow:hidden;white-space:nowrap;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.uk-dotnav>*>:focus,.uk-dotnav>*>:hover{background:rgba(50,50,50,.4);outline:0}.uk-dotnav>*>:active{background:rgba(50,50,50,.6)}.uk-dotnav>.uk-active>*{background:rgba(50,50,50,.4);-webkit-transform:scale(1.3);transform:scale(1.3)}.uk-dotnav-contrast>*>*{background:rgba(255,255,255,.4)}.uk-dotnav-contrast>*>:focus,.uk-dotnav-contrast>*>:hover{background:rgba(255,255,255,.7)}.uk-dotnav-contrast>*>:active{background:rgba(255,255,255,.9)}.uk-dotnav-contrast>.uk-active>*{background:rgba(255,255,255,.9)}.uk-dotnav-vertical{-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column}.uk-dotnav-vertical>*{float:none}
|
2
admin/compiler/com_componentbuilder_v2_1_0__J3/media/uikit/css/components/dotnav.min.css
vendored
Normal file
2
admin/compiler/com_componentbuilder_v2_1_0__J3/media/uikit/css/components/dotnav.min.css
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-dotnav{display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin-left:-15px;margin-top:-15px;padding:0;list-style:none}.uk-dotnav>*{-ms-flex:none;-webkit-flex:none;flex:none;padding-left:15px;margin-top:15px}.uk-dotnav:after,.uk-dotnav:before{content:"";display:block;overflow:hidden}.uk-dotnav:after{clear:both}.uk-dotnav>*{float:left}.uk-dotnav>*>*{display:block;-moz-box-sizing:content-box;box-sizing:content-box;width:20px;height:20px;border-radius:50%;background:rgba(50,50,50,.1);text-indent:100%;overflow:hidden;white-space:nowrap}.uk-dotnav>*>:focus,.uk-dotnav>*>:hover{background:rgba(50,50,50,.4);outline:0}.uk-dotnav>*>:active{background:rgba(50,50,50,.6)}.uk-dotnav>.uk-active>*{background:rgba(50,50,50,.4)}.uk-dotnav-contrast>*>*{background:rgba(255,255,255,.4)}.uk-dotnav-contrast>*>:focus,.uk-dotnav-contrast>*>:hover{background:rgba(255,255,255,.7)}.uk-dotnav-contrast>*>:active{background:rgba(255,255,255,.9)}.uk-dotnav-contrast>.uk-active>*{background:rgba(255,255,255,.9)}.uk-dotnav-vertical{-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column}.uk-dotnav-vertical>*{float:none}
|
@ -0,0 +1,78 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form advanced
|
||||
Note: Only works in Webkit at the moment
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Style
|
||||
* 2. Makes box more robust so it clips the child element
|
||||
* 3. Vertical alignment
|
||||
* 4. Remove default style
|
||||
* 5. Fix black background on iOS
|
||||
*/
|
||||
.uk-form input[type="radio"],
|
||||
.uk-form input[type="checkbox"] {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
height: 14px;
|
||||
width: 14px;
|
||||
border: 1px solid #aaaaaa;
|
||||
/* 2 */
|
||||
overflow: hidden;
|
||||
/* 3 */
|
||||
margin-top: -4px;
|
||||
vertical-align: middle;
|
||||
/* 4 */
|
||||
-webkit-appearance: none;
|
||||
outline: 0;
|
||||
/* 5 */
|
||||
background: transparent;
|
||||
}
|
||||
/* Radio */
|
||||
.uk-form input[type="radio"] {
|
||||
border-radius: 50%;
|
||||
}
|
||||
/*
|
||||
* Checked
|
||||
*/
|
||||
.uk-form input[type=radio]:before,
|
||||
.uk-form input[type=checkbox]:before {
|
||||
display: block;
|
||||
}
|
||||
/* Radio */
|
||||
.uk-form input[type=radio]:checked:before {
|
||||
content: '';
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
margin: 2px auto 0;
|
||||
border-radius: 50%;
|
||||
background: #00a8e6;
|
||||
}
|
||||
/* Checkbox */
|
||||
.uk-form input[type=checkbox]:checked:before,
|
||||
.uk-form input[type=checkbox]:indeterminate:before {
|
||||
content: "\f00c";
|
||||
font-family: FontAwesome;
|
||||
font-size: 12px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
text-align: center;
|
||||
line-height: 12px;
|
||||
color: #00a8e6;
|
||||
}
|
||||
.uk-form input[type=checkbox]:indeterminate:before {
|
||||
content: "\f068";
|
||||
}
|
||||
/*
|
||||
* Disabled
|
||||
*/
|
||||
.uk-form input[type=radio]:disabled,
|
||||
.uk-form input[type=checkbox]:disabled {
|
||||
border-color: #dddddd;
|
||||
}
|
||||
.uk-form input[type=radio]:disabled:checked:before {
|
||||
background-color: #aaaaaa;
|
||||
}
|
||||
.uk-form input[type=checkbox]:disabled:checked:before,
|
||||
.uk-form input[type=checkbox]:disabled:indeterminate:before {
|
||||
color: #aaaaaa;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form input[type=radio],.uk-form input[type=checkbox]{display:inline-block;height:14px;width:14px;border:1px solid #aaa;overflow:hidden;margin-top:-4px;vertical-align:middle;-webkit-appearance:none;outline:0;background:0 0}.uk-form input[type=radio]{border-radius:50%}.uk-form input[type=checkbox]:before,.uk-form input[type=radio]:before{display:block}.uk-form input[type=radio]:checked:before{content:'';width:8px;height:8px;margin:2px auto 0;border-radius:50%;background:#00a8e6}.uk-form input[type=checkbox]:checked:before,.uk-form input[type=checkbox]:indeterminate:before{content:"\f00c";font-family:FontAwesome;font-size:12px;-webkit-font-smoothing:antialiased;text-align:center;line-height:12px;color:#00a8e6}.uk-form input[type=checkbox]:indeterminate:before{content:"\f068"}.uk-form input[type=checkbox]:disabled,.uk-form input[type=radio]:disabled{border-color:#ddd}.uk-form input[type=radio]:disabled:checked:before{background-color:#aaa}.uk-form input[type=checkbox]:disabled:checked:before,.uk-form input[type=checkbox]:disabled:indeterminate:before{color:#aaa}
|
@ -0,0 +1,78 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form advanced
|
||||
Note: Only works in Webkit at the moment
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Style
|
||||
* 2. Makes box more robust so it clips the child element
|
||||
* 3. Vertical alignment
|
||||
* 4. Remove default style
|
||||
* 5. Fix black background on iOS
|
||||
*/
|
||||
.uk-form input[type="radio"],
|
||||
.uk-form input[type="checkbox"] {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
height: 14px;
|
||||
width: 14px;
|
||||
border: 1px solid #aaaaaa;
|
||||
/* 2 */
|
||||
overflow: hidden;
|
||||
/* 3 */
|
||||
margin-top: -4px;
|
||||
vertical-align: middle;
|
||||
/* 4 */
|
||||
-webkit-appearance: none;
|
||||
outline: 0;
|
||||
/* 5 */
|
||||
background: transparent;
|
||||
}
|
||||
/* Radio */
|
||||
.uk-form input[type="radio"] {
|
||||
border-radius: 50%;
|
||||
}
|
||||
/*
|
||||
* Checked
|
||||
*/
|
||||
.uk-form input[type=radio]:before,
|
||||
.uk-form input[type=checkbox]:before {
|
||||
display: block;
|
||||
}
|
||||
/* Radio */
|
||||
.uk-form input[type=radio]:checked:before {
|
||||
content: '';
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
margin: 2px auto 0;
|
||||
border-radius: 50%;
|
||||
background: #00a8e6;
|
||||
}
|
||||
/* Checkbox */
|
||||
.uk-form input[type=checkbox]:checked:before,
|
||||
.uk-form input[type=checkbox]:indeterminate:before {
|
||||
content: "\f00c";
|
||||
font-family: FontAwesome;
|
||||
font-size: 12px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
text-align: center;
|
||||
line-height: 12px;
|
||||
color: #00a8e6;
|
||||
}
|
||||
.uk-form input[type=checkbox]:indeterminate:before {
|
||||
content: "\f068";
|
||||
}
|
||||
/*
|
||||
* Disabled
|
||||
*/
|
||||
.uk-form input[type=radio]:disabled,
|
||||
.uk-form input[type=checkbox]:disabled {
|
||||
border-color: #dddddd;
|
||||
}
|
||||
.uk-form input[type=radio]:disabled:checked:before {
|
||||
background-color: #aaaaaa;
|
||||
}
|
||||
.uk-form input[type=checkbox]:disabled:checked:before,
|
||||
.uk-form input[type=checkbox]:disabled:indeterminate:before {
|
||||
color: #aaaaaa;
|
||||
}
|
@ -0,0 +1,78 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form advanced
|
||||
Note: Only works in Webkit at the moment
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Style
|
||||
* 2. Makes box more robust so it clips the child element
|
||||
* 3. Vertical alignment
|
||||
* 4. Remove default style
|
||||
* 5. Fix black background on iOS
|
||||
*/
|
||||
.uk-form input[type="radio"],
|
||||
.uk-form input[type="checkbox"] {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
height: 14px;
|
||||
width: 14px;
|
||||
border: 1px solid #aaaaaa;
|
||||
/* 2 */
|
||||
overflow: hidden;
|
||||
/* 3 */
|
||||
margin-top: -4px;
|
||||
vertical-align: middle;
|
||||
/* 4 */
|
||||
-webkit-appearance: none;
|
||||
outline: 0;
|
||||
/* 5 */
|
||||
background: transparent;
|
||||
}
|
||||
/* Radio */
|
||||
.uk-form input[type="radio"] {
|
||||
border-radius: 50%;
|
||||
}
|
||||
/*
|
||||
* Checked
|
||||
*/
|
||||
.uk-form input[type=radio]:before,
|
||||
.uk-form input[type=checkbox]:before {
|
||||
display: block;
|
||||
}
|
||||
/* Radio */
|
||||
.uk-form input[type=radio]:checked:before {
|
||||
content: '';
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
margin: 2px auto 0;
|
||||
border-radius: 50%;
|
||||
background: #00a8e6;
|
||||
}
|
||||
/* Checkbox */
|
||||
.uk-form input[type=checkbox]:checked:before,
|
||||
.uk-form input[type=checkbox]:indeterminate:before {
|
||||
content: "\f00c";
|
||||
font-family: FontAwesome;
|
||||
font-size: 12px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
text-align: center;
|
||||
line-height: 12px;
|
||||
color: #00a8e6;
|
||||
}
|
||||
.uk-form input[type=checkbox]:indeterminate:before {
|
||||
content: "\f068";
|
||||
}
|
||||
/*
|
||||
* Disabled
|
||||
*/
|
||||
.uk-form input[type=radio]:disabled,
|
||||
.uk-form input[type=checkbox]:disabled {
|
||||
border-color: #dddddd;
|
||||
}
|
||||
.uk-form input[type=radio]:disabled:checked:before {
|
||||
background-color: #aaaaaa;
|
||||
}
|
||||
.uk-form input[type=checkbox]:disabled:checked:before,
|
||||
.uk-form input[type=checkbox]:disabled:indeterminate:before {
|
||||
color: #aaaaaa;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form input[type=radio],.uk-form input[type=checkbox]{display:inline-block;height:14px;width:14px;border:1px solid #aaa;overflow:hidden;margin-top:-4px;vertical-align:middle;-webkit-appearance:none;outline:0;background:0 0}.uk-form input[type=radio]{border-radius:50%}.uk-form input[type=checkbox]:before,.uk-form input[type=radio]:before{display:block}.uk-form input[type=radio]:checked:before{content:'';width:8px;height:8px;margin:2px auto 0;border-radius:50%;background:#00a8e6}.uk-form input[type=checkbox]:checked:before,.uk-form input[type=checkbox]:indeterminate:before{content:"\f00c";font-family:FontAwesome;font-size:12px;-webkit-font-smoothing:antialiased;text-align:center;line-height:12px;color:#00a8e6}.uk-form input[type=checkbox]:indeterminate:before{content:"\f068"}.uk-form input[type=checkbox]:disabled,.uk-form input[type=radio]:disabled{border-color:#ddd}.uk-form input[type=radio]:disabled:checked:before{background-color:#aaa}.uk-form input[type=checkbox]:disabled:checked:before,.uk-form input[type=checkbox]:disabled:indeterminate:before{color:#aaa}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form input[type=radio],.uk-form input[type=checkbox]{display:inline-block;height:14px;width:14px;border:1px solid #aaa;overflow:hidden;margin-top:-4px;vertical-align:middle;-webkit-appearance:none;outline:0;background:0 0}.uk-form input[type=radio]{border-radius:50%}.uk-form input[type=checkbox]:before,.uk-form input[type=radio]:before{display:block}.uk-form input[type=radio]:checked:before{content:'';width:8px;height:8px;margin:2px auto 0;border-radius:50%;background:#00a8e6}.uk-form input[type=checkbox]:checked:before,.uk-form input[type=checkbox]:indeterminate:before{content:"\f00c";font-family:FontAwesome;font-size:12px;-webkit-font-smoothing:antialiased;text-align:center;line-height:12px;color:#00a8e6}.uk-form input[type=checkbox]:indeterminate:before{content:"\f068"}.uk-form input[type=checkbox]:disabled,.uk-form input[type=radio]:disabled{border-color:#ddd}.uk-form input[type=radio]:disabled:checked:before{background-color:#aaa}.uk-form input[type=checkbox]:disabled:checked:before,.uk-form input[type=checkbox]:disabled:indeterminate:before{color:#aaa}
|
@ -0,0 +1,34 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form file
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Behave like form elements
|
||||
* 2. Create position context for dropdowns
|
||||
* 3. Clip content
|
||||
*/
|
||||
.uk-form-file {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
/* 3 */
|
||||
overflow: hidden;
|
||||
}
|
||||
/*
|
||||
* 1. Required for Firefox
|
||||
* 2. Expand height and required for the cursor
|
||||
*/
|
||||
.uk-form-file input[type="file"] {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
z-index: 1;
|
||||
width: 100%;
|
||||
opacity: 0;
|
||||
cursor: pointer;
|
||||
/* 1 */
|
||||
left: 0;
|
||||
/* 2 */
|
||||
font-size: 500px;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-file{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-file input[type=file]{position:absolute;top:0;z-index:1;width:100%;opacity:0;cursor:pointer;left:0;font-size:500px}
|
@ -0,0 +1,34 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form file
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Behave like form elements
|
||||
* 2. Create position context for dropdowns
|
||||
* 3. Clip content
|
||||
*/
|
||||
.uk-form-file {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
/* 3 */
|
||||
overflow: hidden;
|
||||
}
|
||||
/*
|
||||
* 1. Required for Firefox
|
||||
* 2. Expand height and required for the cursor
|
||||
*/
|
||||
.uk-form-file input[type="file"] {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
z-index: 1;
|
||||
width: 100%;
|
||||
opacity: 0;
|
||||
cursor: pointer;
|
||||
/* 1 */
|
||||
left: 0;
|
||||
/* 2 */
|
||||
font-size: 500px;
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form file
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Behave like form elements
|
||||
* 2. Create position context for dropdowns
|
||||
* 3. Clip content
|
||||
*/
|
||||
.uk-form-file {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
/* 3 */
|
||||
overflow: hidden;
|
||||
}
|
||||
/*
|
||||
* 1. Required for Firefox
|
||||
* 2. Expand height and required for the cursor
|
||||
*/
|
||||
.uk-form-file input[type="file"] {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
z-index: 1;
|
||||
width: 100%;
|
||||
opacity: 0;
|
||||
cursor: pointer;
|
||||
/* 1 */
|
||||
left: 0;
|
||||
/* 2 */
|
||||
font-size: 500px;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-file{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-file input[type=file]{position:absolute;top:0;z-index:1;width:100%;opacity:0;cursor:pointer;left:0;font-size:500px}
|
2
admin/compiler/com_componentbuilder_v2_1_0__J3/media/uikit/css/components/form-file.min.css
vendored
Normal file
2
admin/compiler/com_componentbuilder_v2_1_0__J3/media/uikit/css/components/form-file.min.css
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-file{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-file input[type=file]{position:absolute;top:0;z-index:1;width:100%;opacity:0;cursor:pointer;left:0;font-size:500px}
|
@ -0,0 +1,34 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form password
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Container width fits its content
|
||||
* 2. Create position context
|
||||
* 3. Prevent `inline-block` consequences
|
||||
*/
|
||||
.uk-form-password {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
/* 3 */
|
||||
max-width: 100%;
|
||||
}
|
||||
.uk-form-password-toggle {
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
right: 10px;
|
||||
margin-top: -6px;
|
||||
font-size: 13px;
|
||||
line-height: 13px;
|
||||
color: #999999;
|
||||
}
|
||||
.uk-form-password-toggle:hover {
|
||||
color: #999999;
|
||||
text-decoration: none;
|
||||
}
|
||||
.uk-form-password > input {
|
||||
padding-right: 50px !important;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-password{display:inline-block;position:relative;max-width:100%}.uk-form-password-toggle{display:block;position:absolute;top:50%;right:10px;margin-top:-6px;font-size:13px;line-height:13px;color:#999}.uk-form-password-toggle:hover{color:#999;text-decoration:none}.uk-form-password>input{padding-right:50px!important}
|
@ -0,0 +1,34 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form password
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Container width fits its content
|
||||
* 2. Create position context
|
||||
* 3. Prevent `inline-block` consequences
|
||||
*/
|
||||
.uk-form-password {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
/* 3 */
|
||||
max-width: 100%;
|
||||
}
|
||||
.uk-form-password-toggle {
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
right: 10px;
|
||||
margin-top: -6px;
|
||||
font-size: 13px;
|
||||
line-height: 13px;
|
||||
color: #999999;
|
||||
}
|
||||
.uk-form-password-toggle:hover {
|
||||
color: #999999;
|
||||
text-decoration: none;
|
||||
}
|
||||
.uk-form-password > input {
|
||||
padding-right: 50px !important;
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form password
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Container width fits its content
|
||||
* 2. Create position context
|
||||
* 3. Prevent `inline-block` consequences
|
||||
*/
|
||||
.uk-form-password {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
/* 3 */
|
||||
max-width: 100%;
|
||||
}
|
||||
.uk-form-password-toggle {
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
right: 10px;
|
||||
margin-top: -6px;
|
||||
font-size: 13px;
|
||||
line-height: 13px;
|
||||
color: #999999;
|
||||
}
|
||||
.uk-form-password-toggle:hover {
|
||||
color: #999999;
|
||||
text-decoration: none;
|
||||
}
|
||||
.uk-form-password > input {
|
||||
padding-right: 50px !important;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-password{display:inline-block;position:relative;max-width:100%}.uk-form-password-toggle{display:block;position:absolute;top:50%;right:10px;margin-top:-6px;font-size:13px;line-height:13px;color:#999}.uk-form-password-toggle:hover{color:#999;text-decoration:none}.uk-form-password>input{padding-right:50px!important}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-password{display:inline-block;position:relative;max-width:100%}.uk-form-password-toggle{display:block;position:absolute;top:50%;right:10px;margin-top:-6px;font-size:13px;line-height:13px;color:#999}.uk-form-password-toggle:hover{color:#999;text-decoration:none}.uk-form-password>input{padding-right:50px!important}
|
@ -0,0 +1,35 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form select
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Behave like form elements
|
||||
* 2. Create position context for dropdowns
|
||||
* 3. Clip content
|
||||
*/
|
||||
.uk-form-select {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
/* 3 */
|
||||
overflow: hidden;
|
||||
}
|
||||
/*
|
||||
* 1. Required for Firefox
|
||||
* 1. Required for Webkit to make `height` work
|
||||
*/
|
||||
.uk-form-select select {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
z-index: 1;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
opacity: 0;
|
||||
cursor: pointer;
|
||||
/* 1 */
|
||||
left: 0;
|
||||
/* 2 */
|
||||
-webkit-appearance: none;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-select{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-select select{position:absolute;top:0;z-index:1;width:100%;height:100%;opacity:0;cursor:pointer;left:0;-webkit-appearance:none}
|
@ -0,0 +1,35 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form select
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Behave like form elements
|
||||
* 2. Create position context for dropdowns
|
||||
* 3. Clip content
|
||||
*/
|
||||
.uk-form-select {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
/* 3 */
|
||||
overflow: hidden;
|
||||
}
|
||||
/*
|
||||
* 1. Required for Firefox
|
||||
* 1. Required for Webkit to make `height` work
|
||||
*/
|
||||
.uk-form-select select {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
z-index: 1;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
opacity: 0;
|
||||
cursor: pointer;
|
||||
/* 1 */
|
||||
left: 0;
|
||||
/* 2 */
|
||||
-webkit-appearance: none;
|
||||
}
|
@ -0,0 +1,35 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form select
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Behave like form elements
|
||||
* 2. Create position context for dropdowns
|
||||
* 3. Clip content
|
||||
*/
|
||||
.uk-form-select {
|
||||
/* 1 */
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
/* 3 */
|
||||
overflow: hidden;
|
||||
}
|
||||
/*
|
||||
* 1. Required for Firefox
|
||||
* 1. Required for Webkit to make `height` work
|
||||
*/
|
||||
.uk-form-select select {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
z-index: 1;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
opacity: 0;
|
||||
cursor: pointer;
|
||||
/* 1 */
|
||||
left: 0;
|
||||
/* 2 */
|
||||
-webkit-appearance: none;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-select{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-select select{position:absolute;top:0;z-index:1;width:100%;height:100%;opacity:0;cursor:pointer;left:0;-webkit-appearance:none}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-select{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-select select{position:absolute;top:0;z-index:1;width:100%;height:100%;opacity:0;cursor:pointer;left:0;-webkit-appearance:none}
|
@ -0,0 +1,225 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: HTML editor
|
||||
========================================================================== */
|
||||
/* Sub-object `uk-htmleditor-navbar`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-navbar {
|
||||
background: #f5f5f5;
|
||||
border: 1px solid rgba(0, 0, 0, 0.06);
|
||||
border-top-left-radius: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
}
|
||||
/*
|
||||
* Micro clearfix
|
||||
*/
|
||||
.uk-htmleditor-navbar:before,
|
||||
.uk-htmleditor-navbar:after {
|
||||
content: "";
|
||||
display: table;
|
||||
}
|
||||
.uk-htmleditor-navbar:after {
|
||||
clear: both;
|
||||
}
|
||||
/* Sub-object `uk-htmleditor-navbar-nav`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-navbar-nav {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
float: left;
|
||||
}
|
||||
.uk-htmleditor-navbar-nav > li {
|
||||
float: left;
|
||||
}
|
||||
/*
|
||||
* 1. Dimensions
|
||||
* 2. Style
|
||||
*/
|
||||
.uk-htmleditor-navbar-nav > li > a {
|
||||
display: block;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
text-decoration: none;
|
||||
/* 1 */
|
||||
height: 41px;
|
||||
padding: 0 15px;
|
||||
line-height: 40px;
|
||||
/* 2 */
|
||||
color: #444444;
|
||||
font-size: 11px;
|
||||
cursor: pointer;
|
||||
margin-top: -1px;
|
||||
margin-left: -1px;
|
||||
border: 1px solid transparent;
|
||||
border-bottom-width: 0;
|
||||
text-shadow: 0 1px 0 #ffffff;
|
||||
}
|
||||
/*
|
||||
* Hover
|
||||
* 1. Apply hover style also to focus state
|
||||
* 2. Remove default focus style
|
||||
*/
|
||||
.uk-htmleditor-navbar-nav > li:hover > a,
|
||||
.uk-htmleditor-navbar-nav > li > a:focus {
|
||||
background-color: #fafafa;
|
||||
color: #444444;
|
||||
outline: none;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
border-left-color: rgba(0, 0, 0, 0.1);
|
||||
border-right-color: rgba(0, 0, 0, 0.1);
|
||||
border-top-color: rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
/* OnClick */
|
||||
.uk-htmleditor-navbar-nav > li > a:active {
|
||||
background-color: #eeeeee;
|
||||
color: #444444;
|
||||
border-left-color: rgba(0, 0, 0, 0.1);
|
||||
border-right-color: rgba(0, 0, 0, 0.1);
|
||||
border-top-color: rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
/* Active */
|
||||
.uk-htmleditor-navbar-nav > li.uk-active > a {
|
||||
background-color: #fafafa;
|
||||
color: #444444;
|
||||
border-left-color: rgba(0, 0, 0, 0.1);
|
||||
border-right-color: rgba(0, 0, 0, 0.1);
|
||||
border-top-color: rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
/* Sub-object: `uk-htmleditor-navbar-flip`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-navbar-flip {
|
||||
float: right;
|
||||
}
|
||||
/* Sub-object for special buttons
|
||||
========================================================================== */
|
||||
[data-mode='split'] .uk-htmleditor-button-code,
|
||||
[data-mode='split'] .uk-htmleditor-button-preview {
|
||||
display: none;
|
||||
}
|
||||
/* Sub-object `uk-htmleditor-content`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-content {
|
||||
border-left: 1px solid #dddddd;
|
||||
border-right: 1px solid #dddddd;
|
||||
border-bottom: 1px solid #dddddd;
|
||||
background: #ffffff;
|
||||
border-bottom-left-radius: 4px;
|
||||
border-bottom-right-radius: 4px;
|
||||
}
|
||||
/*
|
||||
* Micro clearfix
|
||||
*/
|
||||
.uk-htmleditor-content:before,
|
||||
.uk-htmleditor-content:after {
|
||||
content: "";
|
||||
display: table;
|
||||
}
|
||||
.uk-htmleditor-content:after {
|
||||
clear: both;
|
||||
}
|
||||
/* Modifier `uk-htmleditor-fullscreen`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-fullscreen {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
z-index: 990;
|
||||
}
|
||||
.uk-htmleditor-fullscreen .uk-htmleditor-content {
|
||||
position: absolute;
|
||||
top: 41px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
}
|
||||
.uk-htmleditor-fullscreen .uk-icon-expand:before {
|
||||
content: "\f066";
|
||||
}
|
||||
/* Sub-objects `uk-htmleditor-code` and `uk-htmleditor-preview`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-code,
|
||||
.uk-htmleditor-preview {
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.uk-htmleditor-preview {
|
||||
padding: 20px;
|
||||
overflow-y: scroll;
|
||||
position: relative;
|
||||
}
|
||||
/*
|
||||
* Tab view
|
||||
*/
|
||||
[data-mode='tab'][data-active-tab='code'] .uk-htmleditor-preview,
|
||||
[data-mode='tab'][data-active-tab='preview'] .uk-htmleditor-code {
|
||||
display: none;
|
||||
}
|
||||
/*
|
||||
* Split view
|
||||
*/
|
||||
[data-mode='split'] .uk-htmleditor-code,
|
||||
[data-mode='split'] .uk-htmleditor-preview {
|
||||
float: left;
|
||||
width: 50%;
|
||||
}
|
||||
[data-mode='split'] .uk-htmleditor-code {
|
||||
border-right: 1px solid #eeeeee;
|
||||
}
|
||||
/* Sub-object `uk-htmleditor-iframe`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-iframe {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
/* CodeMirror modifications
|
||||
========================================================================== */
|
||||
.uk-htmleditor .CodeMirror {
|
||||
padding: 10px;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
/*
|
||||
* Apply same `border-radius` as `uk-htmleditor-navbar`
|
||||
*/
|
||||
.uk-htmleditor-navbar-nav:first-child > li:first-child > a {
|
||||
border-top-left-radius: 4px;
|
||||
}
|
||||
/*
|
||||
* Sub-modifier `uk-htmleditor-navbar-flip`
|
||||
*/
|
||||
/* Collapse border */
|
||||
.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav > li > a {
|
||||
margin-left: 0;
|
||||
margin-right: -1px;
|
||||
}
|
||||
/* Apply same `border-radius` as `uk-htmleditor-navbar` */
|
||||
.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:first-child > li:first-child > a {
|
||||
border-top-left-radius: 0;
|
||||
}
|
||||
.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:last-child > li:last-child > a {
|
||||
border-top-right-radius: 4px;
|
||||
}
|
||||
/*
|
||||
* Sub-modifier `uk-htmleditor-fullscreen`
|
||||
*/
|
||||
.uk-htmleditor-fullscreen .uk-htmleditor-navbar {
|
||||
border-top: none;
|
||||
border-left: none;
|
||||
border-right: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
.uk-htmleditor-fullscreen .uk-htmleditor-content {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
.uk-htmleditor-fullscreen .uk-htmleditor-navbar-nav > li > a {
|
||||
border-radius: 0 !important;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-htmleditor-navbar{background:#f5f5f5;border:1px solid rgba(0,0,0,.06);border-top-left-radius:4px;border-top-right-radius:4px}.uk-htmleditor-navbar:after,.uk-htmleditor-navbar:before{content:"";display:table}.uk-htmleditor-navbar:after{clear:both}.uk-htmleditor-navbar-nav{margin:0;padding:0;list-style:none;float:left}.uk-htmleditor-navbar-nav>li{float:left}.uk-htmleditor-navbar-nav>li>a{display:block;-moz-box-sizing:border-box;box-sizing:border-box;text-decoration:none;height:41px;padding:0 15px;line-height:40px;color:#444;font-size:11px;cursor:pointer;margin-top:-1px;margin-left:-1px;border:1px solid transparent;border-bottom-width:0;text-shadow:0 1px 0 #fff}.uk-htmleditor-navbar-nav>li:hover>a,.uk-htmleditor-navbar-nav>li>a:focus{background-color:#fafafa;color:#444;outline:0;position:relative;z-index:1;border-left-color:rgba(0,0,0,.1);border-right-color:rgba(0,0,0,.1);border-top-color:rgba(0,0,0,.1)}.uk-htmleditor-navbar-nav>li>a:active{background-color:#eee;color:#444;border-left-color:rgba(0,0,0,.1);border-right-color:rgba(0,0,0,.1);border-top-color:rgba(0,0,0,.2)}.uk-htmleditor-navbar-nav>li.uk-active>a{background-color:#fafafa;color:#444;border-left-color:rgba(0,0,0,.1);border-right-color:rgba(0,0,0,.1);border-top-color:rgba(0,0,0,.1)}.uk-htmleditor-navbar-flip{float:right}[data-mode=split] .uk-htmleditor-button-code,[data-mode=split] .uk-htmleditor-button-preview{display:none}.uk-htmleditor-content{border-left:1px solid #ddd;border-right:1px solid #ddd;border-bottom:1px solid #ddd;background:#fff;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.uk-htmleditor-content:after,.uk-htmleditor-content:before{content:"";display:table}.uk-htmleditor-content:after{clear:both}.uk-htmleditor-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:990}.uk-htmleditor-fullscreen .uk-htmleditor-content{position:absolute;top:41px;left:0;right:0;bottom:0}.uk-htmleditor-fullscreen .uk-icon-expand:before{content:"\f066"}.uk-htmleditor-code,.uk-htmleditor-preview{-moz-box-sizing:border-box;box-sizing:border-box}.uk-htmleditor-preview{padding:20px;overflow-y:scroll;position:relative}[data-mode=tab][data-active-tab=code] .uk-htmleditor-preview,[data-mode=tab][data-active-tab=preview] .uk-htmleditor-code{display:none}[data-mode=split] .uk-htmleditor-code,[data-mode=split] .uk-htmleditor-preview{float:left;width:50%}[data-mode=split] .uk-htmleditor-code{border-right:1px solid #eee}.uk-htmleditor-iframe{position:absolute;top:0;left:0;width:100%;height:100%}.uk-htmleditor .CodeMirror{padding:10px;-moz-box-sizing:border-box;box-sizing:border-box}.uk-htmleditor-navbar-nav:first-child>li:first-child>a{border-top-left-radius:4px}.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav>li>a{margin-left:0;margin-right:-1px}.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:first-child>li:first-child>a{border-top-left-radius:0}.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:last-child>li:last-child>a{border-top-right-radius:4px}.uk-htmleditor-fullscreen .uk-htmleditor-navbar{border-top:none;border-left:none;border-right:none;border-radius:0}.uk-htmleditor-fullscreen .uk-htmleditor-content{border:none;border-radius:0}.uk-htmleditor-fullscreen .uk-htmleditor-navbar-nav>li>a{border-radius:0!important}
|
@ -0,0 +1,167 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: HTML editor
|
||||
========================================================================== */
|
||||
/* Sub-object `uk-htmleditor-navbar`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-navbar {
|
||||
background: #eeeeee;
|
||||
}
|
||||
/*
|
||||
* Micro clearfix
|
||||
*/
|
||||
.uk-htmleditor-navbar:before,
|
||||
.uk-htmleditor-navbar:after {
|
||||
content: "";
|
||||
display: table;
|
||||
}
|
||||
.uk-htmleditor-navbar:after {
|
||||
clear: both;
|
||||
}
|
||||
/* Sub-object `uk-htmleditor-navbar-nav`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-navbar-nav {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
float: left;
|
||||
}
|
||||
.uk-htmleditor-navbar-nav > li {
|
||||
float: left;
|
||||
}
|
||||
/*
|
||||
* 1. Dimensions
|
||||
* 2. Style
|
||||
*/
|
||||
.uk-htmleditor-navbar-nav > li > a {
|
||||
display: block;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
text-decoration: none;
|
||||
/* 1 */
|
||||
height: 40px;
|
||||
padding: 0 15px;
|
||||
line-height: 40px;
|
||||
/* 2 */
|
||||
color: #444444;
|
||||
font-size: 11px;
|
||||
cursor: pointer;
|
||||
}
|
||||
/*
|
||||
* Hover
|
||||
* 1. Apply hover style also to focus state
|
||||
* 2. Remove default focus style
|
||||
*/
|
||||
.uk-htmleditor-navbar-nav > li:hover > a,
|
||||
.uk-htmleditor-navbar-nav > li > a:focus {
|
||||
background-color: #f5f5f5;
|
||||
color: #444444;
|
||||
outline: none;
|
||||
/* 2 */
|
||||
}
|
||||
/* OnClick */
|
||||
.uk-htmleditor-navbar-nav > li > a:active {
|
||||
background-color: #dddddd;
|
||||
color: #444444;
|
||||
}
|
||||
/* Active */
|
||||
.uk-htmleditor-navbar-nav > li.uk-active > a {
|
||||
background-color: #f5f5f5;
|
||||
color: #444444;
|
||||
}
|
||||
/* Sub-object: `uk-htmleditor-navbar-flip`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-navbar-flip {
|
||||
float: right;
|
||||
}
|
||||
/* Sub-object for special buttons
|
||||
========================================================================== */
|
||||
[data-mode='split'] .uk-htmleditor-button-code,
|
||||
[data-mode='split'] .uk-htmleditor-button-preview {
|
||||
display: none;
|
||||
}
|
||||
/* Sub-object `uk-htmleditor-content`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-content {
|
||||
border-left: 1px solid #dddddd;
|
||||
border-right: 1px solid #dddddd;
|
||||
border-bottom: 1px solid #dddddd;
|
||||
background: #ffffff;
|
||||
}
|
||||
/*
|
||||
* Micro clearfix
|
||||
*/
|
||||
.uk-htmleditor-content:before,
|
||||
.uk-htmleditor-content:after {
|
||||
content: "";
|
||||
display: table;
|
||||
}
|
||||
.uk-htmleditor-content:after {
|
||||
clear: both;
|
||||
}
|
||||
/* Modifier `uk-htmleditor-fullscreen`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-fullscreen {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
z-index: 990;
|
||||
}
|
||||
.uk-htmleditor-fullscreen .uk-htmleditor-content {
|
||||
position: absolute;
|
||||
top: 40px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
}
|
||||
.uk-htmleditor-fullscreen .uk-icon-expand:before {
|
||||
content: "\f066";
|
||||
}
|
||||
/* Sub-objects `uk-htmleditor-code` and `uk-htmleditor-preview`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-code,
|
||||
.uk-htmleditor-preview {
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.uk-htmleditor-preview {
|
||||
padding: 20px;
|
||||
overflow-y: scroll;
|
||||
position: relative;
|
||||
}
|
||||
/*
|
||||
* Tab view
|
||||
*/
|
||||
[data-mode='tab'][data-active-tab='code'] .uk-htmleditor-preview,
|
||||
[data-mode='tab'][data-active-tab='preview'] .uk-htmleditor-code {
|
||||
display: none;
|
||||
}
|
||||
/*
|
||||
* Split view
|
||||
*/
|
||||
[data-mode='split'] .uk-htmleditor-code,
|
||||
[data-mode='split'] .uk-htmleditor-preview {
|
||||
float: left;
|
||||
width: 50%;
|
||||
}
|
||||
[data-mode='split'] .uk-htmleditor-code {
|
||||
border-right: 1px solid #eeeeee;
|
||||
}
|
||||
/* Sub-object `uk-htmleditor-iframe`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-iframe {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
/* CodeMirror modifications
|
||||
========================================================================== */
|
||||
.uk-htmleditor .CodeMirror {
|
||||
padding: 10px;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
@ -0,0 +1,232 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: HTML editor
|
||||
========================================================================== */
|
||||
/* Sub-object `uk-htmleditor-navbar`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-navbar {
|
||||
background: #f7f7f7;
|
||||
border: 1px solid rgba(0, 0, 0, 0.1);
|
||||
border-bottom-color: rgba(0, 0, 0, 0.2);
|
||||
border-top-left-radius: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
background-origin: border-box;
|
||||
background-image: -webkit-linear-gradient(top, #ffffff, #eeeeee);
|
||||
background-image: linear-gradient(to bottom, #ffffff, #eeeeee);
|
||||
}
|
||||
/*
|
||||
* Micro clearfix
|
||||
*/
|
||||
.uk-htmleditor-navbar:before,
|
||||
.uk-htmleditor-navbar:after {
|
||||
content: "";
|
||||
display: table;
|
||||
}
|
||||
.uk-htmleditor-navbar:after {
|
||||
clear: both;
|
||||
}
|
||||
/* Sub-object `uk-htmleditor-navbar-nav`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-navbar-nav {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
float: left;
|
||||
}
|
||||
.uk-htmleditor-navbar-nav > li {
|
||||
float: left;
|
||||
}
|
||||
/*
|
||||
* 1. Dimensions
|
||||
* 2. Style
|
||||
*/
|
||||
.uk-htmleditor-navbar-nav > li > a {
|
||||
display: block;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
text-decoration: none;
|
||||
/* 1 */
|
||||
height: 41px;
|
||||
padding: 0 15px;
|
||||
line-height: 40px;
|
||||
/* 2 */
|
||||
color: #444444;
|
||||
font-size: 11px;
|
||||
cursor: pointer;
|
||||
margin-top: -1px;
|
||||
margin-left: -1px;
|
||||
border: 1px solid transparent;
|
||||
border-bottom-width: 0;
|
||||
text-shadow: 0 1px 0 #ffffff;
|
||||
}
|
||||
/*
|
||||
* Hover
|
||||
* 1. Apply hover style also to focus state
|
||||
* 2. Remove default focus style
|
||||
*/
|
||||
.uk-htmleditor-navbar-nav > li:hover > a,
|
||||
.uk-htmleditor-navbar-nav > li > a:focus {
|
||||
background-color: transparent;
|
||||
color: #444444;
|
||||
outline: none;
|
||||
/* 2 */
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
border-left-color: rgba(0, 0, 0, 0.1);
|
||||
border-right-color: rgba(0, 0, 0, 0.1);
|
||||
border-top-color: rgba(0, 0, 0, 0.1);
|
||||
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
/* OnClick */
|
||||
.uk-htmleditor-navbar-nav > li > a:active {
|
||||
background-color: #f5f5f5;
|
||||
color: #444444;
|
||||
border-left-color: rgba(0, 0, 0, 0.1);
|
||||
border-right-color: rgba(0, 0, 0, 0.1);
|
||||
border-top-color: rgba(0, 0, 0, 0.2);
|
||||
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
/* Active */
|
||||
.uk-htmleditor-navbar-nav > li.uk-active > a {
|
||||
background-color: #fafafa;
|
||||
color: #444444;
|
||||
border-left-color: rgba(0, 0, 0, 0.1);
|
||||
border-right-color: rgba(0, 0, 0, 0.1);
|
||||
border-top-color: rgba(0, 0, 0, 0.2);
|
||||
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
/* Sub-object: `uk-htmleditor-navbar-flip`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-navbar-flip {
|
||||
float: right;
|
||||
}
|
||||
/* Sub-object for special buttons
|
||||
========================================================================== */
|
||||
[data-mode='split'] .uk-htmleditor-button-code,
|
||||
[data-mode='split'] .uk-htmleditor-button-preview {
|
||||
display: none;
|
||||
}
|
||||
/* Sub-object `uk-htmleditor-content`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-content {
|
||||
border-left: 1px solid #dddddd;
|
||||
border-right: 1px solid #dddddd;
|
||||
border-bottom: 1px solid #dddddd;
|
||||
background: #ffffff;
|
||||
border-bottom-left-radius: 4px;
|
||||
border-bottom-right-radius: 4px;
|
||||
}
|
||||
/*
|
||||
* Micro clearfix
|
||||
*/
|
||||
.uk-htmleditor-content:before,
|
||||
.uk-htmleditor-content:after {
|
||||
content: "";
|
||||
display: table;
|
||||
}
|
||||
.uk-htmleditor-content:after {
|
||||
clear: both;
|
||||
}
|
||||
/* Modifier `uk-htmleditor-fullscreen`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-fullscreen {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
z-index: 990;
|
||||
}
|
||||
.uk-htmleditor-fullscreen .uk-htmleditor-content {
|
||||
position: absolute;
|
||||
top: 41px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
}
|
||||
.uk-htmleditor-fullscreen .uk-icon-expand:before {
|
||||
content: "\f066";
|
||||
}
|
||||
/* Sub-objects `uk-htmleditor-code` and `uk-htmleditor-preview`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-code,
|
||||
.uk-htmleditor-preview {
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.uk-htmleditor-preview {
|
||||
padding: 20px;
|
||||
overflow-y: scroll;
|
||||
position: relative;
|
||||
}
|
||||
/*
|
||||
* Tab view
|
||||
*/
|
||||
[data-mode='tab'][data-active-tab='code'] .uk-htmleditor-preview,
|
||||
[data-mode='tab'][data-active-tab='preview'] .uk-htmleditor-code {
|
||||
display: none;
|
||||
}
|
||||
/*
|
||||
* Split view
|
||||
*/
|
||||
[data-mode='split'] .uk-htmleditor-code,
|
||||
[data-mode='split'] .uk-htmleditor-preview {
|
||||
float: left;
|
||||
width: 50%;
|
||||
}
|
||||
[data-mode='split'] .uk-htmleditor-code {
|
||||
border-right: 1px solid #eeeeee;
|
||||
}
|
||||
/* Sub-object `uk-htmleditor-iframe`
|
||||
========================================================================== */
|
||||
.uk-htmleditor-iframe {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
/* CodeMirror modifications
|
||||
========================================================================== */
|
||||
.uk-htmleditor .CodeMirror {
|
||||
padding: 10px;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
/*
|
||||
* Apply same `border-radius` as `uk-htmleditor-navbar`
|
||||
*/
|
||||
.uk-htmleditor-navbar-nav:first-child > li:first-child > a {
|
||||
border-top-left-radius: 4px;
|
||||
}
|
||||
/*
|
||||
* Sub-modifier `uk-htmleditor-navbar-flip`
|
||||
*/
|
||||
/* Collapse border */
|
||||
.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav > li > a {
|
||||
margin-left: 0;
|
||||
margin-right: -1px;
|
||||
}
|
||||
/* Apply same `border-radius` as `uk-htmleditor-navbar` */
|
||||
.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:first-child > li:first-child > a {
|
||||
border-top-left-radius: 0;
|
||||
}
|
||||
.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:last-child > li:last-child > a {
|
||||
border-top-right-radius: 4px;
|
||||
}
|
||||
/*
|
||||
* Sub-modifier `uk-htmleditor-fullscreen`
|
||||
*/
|
||||
.uk-htmleditor-fullscreen .uk-htmleditor-navbar {
|
||||
border-top: none;
|
||||
border-left: none;
|
||||
border-right: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
.uk-htmleditor-fullscreen .uk-htmleditor-content {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
.uk-htmleditor-fullscreen .uk-htmleditor-navbar-nav > li > a {
|
||||
border-radius: 0 !important;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-htmleditor-navbar{background:#f7f7f7;border:1px solid rgba(0,0,0,.1);border-bottom-color:rgba(0,0,0,.2);border-top-left-radius:4px;border-top-right-radius:4px;background-origin:border-box;background-image:-webkit-linear-gradient(top,#fff,#eee);background-image:linear-gradient(to bottom,#fff,#eee)}.uk-htmleditor-navbar:after,.uk-htmleditor-navbar:before{content:"";display:table}.uk-htmleditor-navbar:after{clear:both}.uk-htmleditor-navbar-nav{margin:0;padding:0;list-style:none;float:left}.uk-htmleditor-navbar-nav>li{float:left}.uk-htmleditor-navbar-nav>li>a{display:block;-moz-box-sizing:border-box;box-sizing:border-box;text-decoration:none;height:41px;padding:0 15px;line-height:40px;color:#444;font-size:11px;cursor:pointer;margin-top:-1px;margin-left:-1px;border:1px solid transparent;border-bottom-width:0;text-shadow:0 1px 0 #fff}.uk-htmleditor-navbar-nav>li:hover>a,.uk-htmleditor-navbar-nav>li>a:focus{background-color:transparent;color:#444;outline:0;position:relative;z-index:1;border-left-color:rgba(0,0,0,.1);border-right-color:rgba(0,0,0,.1);border-top-color:rgba(0,0,0,.1);box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.uk-htmleditor-navbar-nav>li>a:active{background-color:#f5f5f5;color:#444;border-left-color:rgba(0,0,0,.1);border-right-color:rgba(0,0,0,.1);border-top-color:rgba(0,0,0,.2);box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.uk-htmleditor-navbar-nav>li.uk-active>a{background-color:#fafafa;color:#444;border-left-color:rgba(0,0,0,.1);border-right-color:rgba(0,0,0,.1);border-top-color:rgba(0,0,0,.2);box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.uk-htmleditor-navbar-flip{float:right}[data-mode=split] .uk-htmleditor-button-code,[data-mode=split] .uk-htmleditor-button-preview{display:none}.uk-htmleditor-content{border-left:1px solid #ddd;border-right:1px solid #ddd;border-bottom:1px solid #ddd;background:#fff;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.uk-htmleditor-content:after,.uk-htmleditor-content:before{content:"";display:table}.uk-htmleditor-content:after{clear:both}.uk-htmleditor-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:990}.uk-htmleditor-fullscreen .uk-htmleditor-content{position:absolute;top:41px;left:0;right:0;bottom:0}.uk-htmleditor-fullscreen .uk-icon-expand:before{content:"\f066"}.uk-htmleditor-code,.uk-htmleditor-preview{-moz-box-sizing:border-box;box-sizing:border-box}.uk-htmleditor-preview{padding:20px;overflow-y:scroll;position:relative}[data-mode=tab][data-active-tab=code] .uk-htmleditor-preview,[data-mode=tab][data-active-tab=preview] .uk-htmleditor-code{display:none}[data-mode=split] .uk-htmleditor-code,[data-mode=split] .uk-htmleditor-preview{float:left;width:50%}[data-mode=split] .uk-htmleditor-code{border-right:1px solid #eee}.uk-htmleditor-iframe{position:absolute;top:0;left:0;width:100%;height:100%}.uk-htmleditor .CodeMirror{padding:10px;-moz-box-sizing:border-box;box-sizing:border-box}.uk-htmleditor-navbar-nav:first-child>li:first-child>a{border-top-left-radius:4px}.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav>li>a{margin-left:0;margin-right:-1px}.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:first-child>li:first-child>a{border-top-left-radius:0}.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:last-child>li:last-child>a{border-top-right-radius:4px}.uk-htmleditor-fullscreen .uk-htmleditor-navbar{border-top:none;border-left:none;border-right:none;border-radius:0}.uk-htmleditor-fullscreen .uk-htmleditor-content{border:none;border-radius:0}.uk-htmleditor-fullscreen .uk-htmleditor-navbar-nav>li>a{border-radius:0!important}
|
2
admin/compiler/com_componentbuilder_v2_1_0__J3/media/uikit/css/components/htmleditor.min.css
vendored
Normal file
2
admin/compiler/com_componentbuilder_v2_1_0__J3/media/uikit/css/components/htmleditor.min.css
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-htmleditor-navbar{background:#eee}.uk-htmleditor-navbar:after,.uk-htmleditor-navbar:before{content:"";display:table}.uk-htmleditor-navbar:after{clear:both}.uk-htmleditor-navbar-nav{margin:0;padding:0;list-style:none;float:left}.uk-htmleditor-navbar-nav>li{float:left}.uk-htmleditor-navbar-nav>li>a{display:block;-moz-box-sizing:border-box;box-sizing:border-box;text-decoration:none;height:40px;padding:0 15px;line-height:40px;color:#444;font-size:11px;cursor:pointer}.uk-htmleditor-navbar-nav>li:hover>a,.uk-htmleditor-navbar-nav>li>a:focus{background-color:#f5f5f5;color:#444;outline:0}.uk-htmleditor-navbar-nav>li>a:active{background-color:#ddd;color:#444}.uk-htmleditor-navbar-nav>li.uk-active>a{background-color:#f5f5f5;color:#444}.uk-htmleditor-navbar-flip{float:right}[data-mode=split] .uk-htmleditor-button-code,[data-mode=split] .uk-htmleditor-button-preview{display:none}.uk-htmleditor-content{border-left:1px solid #ddd;border-right:1px solid #ddd;border-bottom:1px solid #ddd;background:#fff}.uk-htmleditor-content:after,.uk-htmleditor-content:before{content:"";display:table}.uk-htmleditor-content:after{clear:both}.uk-htmleditor-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:990}.uk-htmleditor-fullscreen .uk-htmleditor-content{position:absolute;top:40px;left:0;right:0;bottom:0}.uk-htmleditor-fullscreen .uk-icon-expand:before{content:"\f066"}.uk-htmleditor-code,.uk-htmleditor-preview{-moz-box-sizing:border-box;box-sizing:border-box}.uk-htmleditor-preview{padding:20px;overflow-y:scroll;position:relative}[data-mode=tab][data-active-tab=code] .uk-htmleditor-preview,[data-mode=tab][data-active-tab=preview] .uk-htmleditor-code{display:none}[data-mode=split] .uk-htmleditor-code,[data-mode=split] .uk-htmleditor-preview{float:left;width:50%}[data-mode=split] .uk-htmleditor-code{border-right:1px solid #eee}.uk-htmleditor-iframe{position:absolute;top:0;left:0;width:100%;height:100%}.uk-htmleditor .CodeMirror{padding:10px;-moz-box-sizing:border-box;box-sizing:border-box}
|
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
@ -0,0 +1,135 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Nestable
|
||||
========================================================================== */
|
||||
.uk-nestable {
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
}
|
||||
/*
|
||||
* Disables the default callout shown when you touch and hold a touch target
|
||||
* Currently only works in Webkit
|
||||
*/
|
||||
.uk-nestable a,
|
||||
.uk-nestable img {
|
||||
-webkit-touch-callout: none;
|
||||
}
|
||||
/* Sub-object `uk-nestable-list`
|
||||
========================================================================== */
|
||||
.uk-nestable-list {
|
||||
margin: 0;
|
||||
padding-left: 40px;
|
||||
list-style: none;
|
||||
}
|
||||
/* Sub-modifier `uk-nestable-item`
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Deactivate browser touch actions in IE11
|
||||
*/
|
||||
.uk-nestable-item {
|
||||
/* 1 */
|
||||
touch-action: none;
|
||||
}
|
||||
.uk-nestable-item + .uk-nestable-item {
|
||||
margin-top: 10px;
|
||||
}
|
||||
.uk-nestable-list:not(.uk-nestable-dragged) > .uk-nestable-item:first-child {
|
||||
margin-top: 10px;
|
||||
}
|
||||
/* Sub-modifier `uk-nestable-dragged`
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Reset style
|
||||
*/
|
||||
.uk-nestable-dragged {
|
||||
position: absolute;
|
||||
z-index: 1050;
|
||||
pointer-events: none;
|
||||
/* 1 */
|
||||
padding-left: 0;
|
||||
}
|
||||
/* Sub-modifier `uk-nestable-placeholder`
|
||||
========================================================================== */
|
||||
.uk-nestable-placeholder {
|
||||
position: relative;
|
||||
}
|
||||
.uk-nestable-placeholder > * {
|
||||
opacity: 0;
|
||||
}
|
||||
.uk-nestable-placeholder:after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
border: 1px dashed #dddddd;
|
||||
opacity: 1;
|
||||
}
|
||||
/* Empty List
|
||||
========================================================================== */
|
||||
.uk-nestable:empty {
|
||||
min-height: 30px;
|
||||
}
|
||||
/* Sub-object `uk-nestable-handle`
|
||||
========================================================================== */
|
||||
/*
|
||||
* Deactivate browser touch actions in IE11
|
||||
*/
|
||||
.uk-nestable-handle {
|
||||
touch-action: none;
|
||||
}
|
||||
/* Hover */
|
||||
.uk-nestable-handle:hover {
|
||||
cursor: move;
|
||||
}
|
||||
/* Sub-object `uk-nestable-moving`
|
||||
========================================================================== */
|
||||
.uk-nestable-moving,
|
||||
.uk-nestable-moving * {
|
||||
cursor: move;
|
||||
}
|
||||
/* [data-nestable-action='toggle']
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Makes text unselectable. Happens if double clicked by mistake
|
||||
*/
|
||||
[data-nestable-action='toggle'] {
|
||||
cursor: pointer;
|
||||
/* 1 */
|
||||
-moz-user-select: none;
|
||||
-webkit-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
/* Sub-object `.uk-nestable-toggle`
|
||||
========================================================================== */
|
||||
.uk-nestable-toggle {
|
||||
display: inline-block;
|
||||
visibility: hidden;
|
||||
}
|
||||
.uk-nestable-toggle:after {
|
||||
content: "\f147";
|
||||
font-family: FontAwesome;
|
||||
}
|
||||
.uk-parent > :not(.uk-nestable-list) .uk-nestable-toggle {
|
||||
visibility: visible;
|
||||
}
|
||||
/*
|
||||
* Collapsed
|
||||
*/
|
||||
.uk-collapsed .uk-nestable-list {
|
||||
display: none;
|
||||
}
|
||||
.uk-collapsed .uk-nestable-toggle:after {
|
||||
content: "\f196";
|
||||
}
|
||||
/* Sub-object `uk-nestable-panel`
|
||||
========================================================================== */
|
||||
.uk-nestable-panel {
|
||||
padding: 5px;
|
||||
background: #f5f5f5;
|
||||
border-radius: 4px;
|
||||
border: 1px solid rgba(0, 0, 0, 0.06);
|
||||
text-shadow: 0 1px 0 #ffffff;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-nestable{padding:0;list-style:none}.uk-nestable a,.uk-nestable img{-webkit-touch-callout:none}.uk-nestable-list{margin:0;padding-left:40px;list-style:none}.uk-nestable-item{touch-action:none}.uk-nestable-item+.uk-nestable-item{margin-top:10px}.uk-nestable-list:not(.uk-nestable-dragged)>.uk-nestable-item:first-child{margin-top:10px}.uk-nestable-dragged{position:absolute;z-index:1050;pointer-events:none;padding-left:0}.uk-nestable-placeholder{position:relative}.uk-nestable-placeholder>*{opacity:0}.uk-nestable-placeholder:after{content:'';position:absolute;top:0;bottom:0;left:0;right:0;border:1px dashed #ddd;opacity:1}.uk-nestable:empty{min-height:30px}.uk-nestable-handle{touch-action:none}.uk-nestable-handle:hover{cursor:move}.uk-nestable-moving,.uk-nestable-moving *{cursor:move}[data-nestable-action=toggle]{cursor:pointer;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.uk-nestable-toggle{display:inline-block;visibility:hidden}.uk-nestable-toggle:after{content:"\f147";font-family:FontAwesome}.uk-parent>:not(.uk-nestable-list) .uk-nestable-toggle{visibility:visible}.uk-collapsed .uk-nestable-list{display:none}.uk-collapsed .uk-nestable-toggle:after{content:"\f196"}.uk-nestable-panel{padding:5px;background:#f5f5f5;border-radius:4px;border:1px solid rgba(0,0,0,.06);text-shadow:0 1px 0 #fff}
|
@ -0,0 +1,132 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Nestable
|
||||
========================================================================== */
|
||||
.uk-nestable {
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
}
|
||||
/*
|
||||
* Disables the default callout shown when you touch and hold a touch target
|
||||
* Currently only works in Webkit
|
||||
*/
|
||||
.uk-nestable a,
|
||||
.uk-nestable img {
|
||||
-webkit-touch-callout: none;
|
||||
}
|
||||
/* Sub-object `uk-nestable-list`
|
||||
========================================================================== */
|
||||
.uk-nestable-list {
|
||||
margin: 0;
|
||||
padding-left: 40px;
|
||||
list-style: none;
|
||||
}
|
||||
/* Sub-modifier `uk-nestable-item`
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Deactivate browser touch actions in IE11
|
||||
*/
|
||||
.uk-nestable-item {
|
||||
/* 1 */
|
||||
touch-action: none;
|
||||
}
|
||||
.uk-nestable-item + .uk-nestable-item {
|
||||
margin-top: 10px;
|
||||
}
|
||||
.uk-nestable-list:not(.uk-nestable-dragged) > .uk-nestable-item:first-child {
|
||||
margin-top: 10px;
|
||||
}
|
||||
/* Sub-modifier `uk-nestable-dragged`
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Reset style
|
||||
*/
|
||||
.uk-nestable-dragged {
|
||||
position: absolute;
|
||||
z-index: 1050;
|
||||
pointer-events: none;
|
||||
/* 1 */
|
||||
padding-left: 0;
|
||||
}
|
||||
/* Sub-modifier `uk-nestable-placeholder`
|
||||
========================================================================== */
|
||||
.uk-nestable-placeholder {
|
||||
position: relative;
|
||||
}
|
||||
.uk-nestable-placeholder > * {
|
||||
opacity: 0;
|
||||
}
|
||||
.uk-nestable-placeholder:after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
border: 1px dashed #dddddd;
|
||||
opacity: 1;
|
||||
}
|
||||
/* Empty List
|
||||
========================================================================== */
|
||||
.uk-nestable:empty {
|
||||
min-height: 30px;
|
||||
}
|
||||
/* Sub-object `uk-nestable-handle`
|
||||
========================================================================== */
|
||||
/*
|
||||
* Deactivate browser touch actions in IE11
|
||||
*/
|
||||
.uk-nestable-handle {
|
||||
touch-action: none;
|
||||
}
|
||||
/* Hover */
|
||||
.uk-nestable-handle:hover {
|
||||
cursor: move;
|
||||
}
|
||||
/* Sub-object `uk-nestable-moving`
|
||||
========================================================================== */
|
||||
.uk-nestable-moving,
|
||||
.uk-nestable-moving * {
|
||||
cursor: move;
|
||||
}
|
||||
/* [data-nestable-action='toggle']
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Makes text unselectable. Happens if double clicked by mistake
|
||||
*/
|
||||
[data-nestable-action='toggle'] {
|
||||
cursor: pointer;
|
||||
/* 1 */
|
||||
-moz-user-select: none;
|
||||
-webkit-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
/* Sub-object `.uk-nestable-toggle`
|
||||
========================================================================== */
|
||||
.uk-nestable-toggle {
|
||||
display: inline-block;
|
||||
visibility: hidden;
|
||||
}
|
||||
.uk-nestable-toggle:after {
|
||||
content: "\f147";
|
||||
font-family: FontAwesome;
|
||||
}
|
||||
.uk-parent > :not(.uk-nestable-list) .uk-nestable-toggle {
|
||||
visibility: visible;
|
||||
}
|
||||
/*
|
||||
* Collapsed
|
||||
*/
|
||||
.uk-collapsed .uk-nestable-list {
|
||||
display: none;
|
||||
}
|
||||
.uk-collapsed .uk-nestable-toggle:after {
|
||||
content: "\f196";
|
||||
}
|
||||
/* Sub-object `uk-nestable-panel`
|
||||
========================================================================== */
|
||||
.uk-nestable-panel {
|
||||
padding: 5px;
|
||||
background: #f5f5f5;
|
||||
}
|
@ -0,0 +1,139 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Nestable
|
||||
========================================================================== */
|
||||
.uk-nestable {
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
}
|
||||
/*
|
||||
* Disables the default callout shown when you touch and hold a touch target
|
||||
* Currently only works in Webkit
|
||||
*/
|
||||
.uk-nestable a,
|
||||
.uk-nestable img {
|
||||
-webkit-touch-callout: none;
|
||||
}
|
||||
/* Sub-object `uk-nestable-list`
|
||||
========================================================================== */
|
||||
.uk-nestable-list {
|
||||
margin: 0;
|
||||
padding-left: 40px;
|
||||
list-style: none;
|
||||
}
|
||||
/* Sub-modifier `uk-nestable-item`
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Deactivate browser touch actions in IE11
|
||||
*/
|
||||
.uk-nestable-item {
|
||||
/* 1 */
|
||||
touch-action: none;
|
||||
}
|
||||
.uk-nestable-item + .uk-nestable-item {
|
||||
margin-top: 10px;
|
||||
}
|
||||
.uk-nestable-list:not(.uk-nestable-dragged) > .uk-nestable-item:first-child {
|
||||
margin-top: 10px;
|
||||
}
|
||||
/* Sub-modifier `uk-nestable-dragged`
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Reset style
|
||||
*/
|
||||
.uk-nestable-dragged {
|
||||
position: absolute;
|
||||
z-index: 1050;
|
||||
pointer-events: none;
|
||||
/* 1 */
|
||||
padding-left: 0;
|
||||
}
|
||||
/* Sub-modifier `uk-nestable-placeholder`
|
||||
========================================================================== */
|
||||
.uk-nestable-placeholder {
|
||||
position: relative;
|
||||
}
|
||||
.uk-nestable-placeholder > * {
|
||||
opacity: 0;
|
||||
}
|
||||
.uk-nestable-placeholder:after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
border: 1px dashed #dddddd;
|
||||
opacity: 1;
|
||||
}
|
||||
/* Empty List
|
||||
========================================================================== */
|
||||
.uk-nestable:empty {
|
||||
min-height: 30px;
|
||||
}
|
||||
/* Sub-object `uk-nestable-handle`
|
||||
========================================================================== */
|
||||
/*
|
||||
* Deactivate browser touch actions in IE11
|
||||
*/
|
||||
.uk-nestable-handle {
|
||||
touch-action: none;
|
||||
}
|
||||
/* Hover */
|
||||
.uk-nestable-handle:hover {
|
||||
cursor: move;
|
||||
}
|
||||
/* Sub-object `uk-nestable-moving`
|
||||
========================================================================== */
|
||||
.uk-nestable-moving,
|
||||
.uk-nestable-moving * {
|
||||
cursor: move;
|
||||
}
|
||||
/* [data-nestable-action='toggle']
|
||||
========================================================================== */
|
||||
/*
|
||||
* 1. Makes text unselectable. Happens if double clicked by mistake
|
||||
*/
|
||||
[data-nestable-action='toggle'] {
|
||||
cursor: pointer;
|
||||
/* 1 */
|
||||
-moz-user-select: none;
|
||||
-webkit-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
/* Sub-object `.uk-nestable-toggle`
|
||||
========================================================================== */
|
||||
.uk-nestable-toggle {
|
||||
display: inline-block;
|
||||
visibility: hidden;
|
||||
}
|
||||
.uk-nestable-toggle:after {
|
||||
content: "\f147";
|
||||
font-family: FontAwesome;
|
||||
}
|
||||
.uk-parent > :not(.uk-nestable-list) .uk-nestable-toggle {
|
||||
visibility: visible;
|
||||
}
|
||||
/*
|
||||
* Collapsed
|
||||
*/
|
||||
.uk-collapsed .uk-nestable-list {
|
||||
display: none;
|
||||
}
|
||||
.uk-collapsed .uk-nestable-toggle:after {
|
||||
content: "\f196";
|
||||
}
|
||||
/* Sub-object `uk-nestable-panel`
|
||||
========================================================================== */
|
||||
.uk-nestable-panel {
|
||||
padding: 5px;
|
||||
background: #f7f7f7;
|
||||
border-radius: 4px;
|
||||
border: 1px solid rgba(0, 0, 0, 0.2);
|
||||
border-bottom-color: rgba(0, 0, 0, 0.3);
|
||||
background-origin: border-box;
|
||||
background-image: -webkit-linear-gradient(top, #ffffff, #eeeeee);
|
||||
background-image: linear-gradient(to bottom, #ffffff, #eeeeee);
|
||||
text-shadow: 0 1px 0 #ffffff;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-nestable{padding:0;list-style:none}.uk-nestable a,.uk-nestable img{-webkit-touch-callout:none}.uk-nestable-list{margin:0;padding-left:40px;list-style:none}.uk-nestable-item{touch-action:none}.uk-nestable-item+.uk-nestable-item{margin-top:10px}.uk-nestable-list:not(.uk-nestable-dragged)>.uk-nestable-item:first-child{margin-top:10px}.uk-nestable-dragged{position:absolute;z-index:1050;pointer-events:none;padding-left:0}.uk-nestable-placeholder{position:relative}.uk-nestable-placeholder>*{opacity:0}.uk-nestable-placeholder:after{content:'';position:absolute;top:0;bottom:0;left:0;right:0;border:1px dashed #ddd;opacity:1}.uk-nestable:empty{min-height:30px}.uk-nestable-handle{touch-action:none}.uk-nestable-handle:hover{cursor:move}.uk-nestable-moving,.uk-nestable-moving *{cursor:move}[data-nestable-action=toggle]{cursor:pointer;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.uk-nestable-toggle{display:inline-block;visibility:hidden}.uk-nestable-toggle:after{content:"\f147";font-family:FontAwesome}.uk-parent>:not(.uk-nestable-list) .uk-nestable-toggle{visibility:visible}.uk-collapsed .uk-nestable-list{display:none}.uk-collapsed .uk-nestable-toggle:after{content:"\f196"}.uk-nestable-panel{padding:5px;background:#f7f7f7;border-radius:4px;border:1px solid rgba(0,0,0,.2);border-bottom-color:rgba(0,0,0,.3);background-origin:border-box;background-image:-webkit-linear-gradient(top,#fff,#eee);background-image:linear-gradient(to bottom,#fff,#eee);text-shadow:0 1px 0 #fff}
|
2
admin/compiler/com_componentbuilder_v2_1_0__J3/media/uikit/css/components/nestable.min.css
vendored
Normal file
2
admin/compiler/com_componentbuilder_v2_1_0__J3/media/uikit/css/components/nestable.min.css
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-nestable{padding:0;list-style:none}.uk-nestable a,.uk-nestable img{-webkit-touch-callout:none}.uk-nestable-list{margin:0;padding-left:40px;list-style:none}.uk-nestable-item{touch-action:none}.uk-nestable-item+.uk-nestable-item{margin-top:10px}.uk-nestable-list:not(.uk-nestable-dragged)>.uk-nestable-item:first-child{margin-top:10px}.uk-nestable-dragged{position:absolute;z-index:1050;pointer-events:none;padding-left:0}.uk-nestable-placeholder{position:relative}.uk-nestable-placeholder>*{opacity:0}.uk-nestable-placeholder:after{content:'';position:absolute;top:0;bottom:0;left:0;right:0;border:1px dashed #ddd;opacity:1}.uk-nestable:empty{min-height:30px}.uk-nestable-handle{touch-action:none}.uk-nestable-handle:hover{cursor:move}.uk-nestable-moving,.uk-nestable-moving *{cursor:move}[data-nestable-action=toggle]{cursor:pointer;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.uk-nestable-toggle{display:inline-block;visibility:hidden}.uk-nestable-toggle:after{content:"\f147";font-family:FontAwesome}.uk-parent>:not(.uk-nestable-list) .uk-nestable-toggle{visibility:visible}.uk-collapsed .uk-nestable-list{display:none}.uk-collapsed .uk-nestable-toggle:after{content:"\f196"}.uk-nestable-panel{padding:5px;background:#f5f5f5}
|
@ -0,0 +1,99 @@
|
||||
/*! UIkit 2.21.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Notify
|
||||
========================================================================== */
|
||||
/*
|
||||
* Message container for positioning
|
||||
*/
|
||||
.uk-notify {
|
||||
position: fixed;
|
||||
top: 10px;
|
||||
left: 10px;
|
||||
z-index: 1040;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
width: 350px;
|
||||
}
|
||||
/* Position modifiers
|
||||
========================================================================== */
|
||||
.uk-notify-top-right,
|
||||
.uk-notify-bottom-right {
|
||||
left: auto;
|
||||
right: 10px;
|
||||
}
|
||||
.uk-notify-top-center,
|
||||
.uk-notify-bottom-center {
|
||||
left: 50%;
|
||||
margin-left: -175px;
|
||||
}
|
||||
.uk-notify-bottom-left,
|
||||
.uk-notify-bottom-right,
|
||||
.uk-notify-bottom-center {
|
||||
top: auto;
|
||||
bottom: 10px;
|
||||
}
|
||||
/* Responsiveness
|
||||
========================================================================== */
|
||||
/* Phones portrait and smaller */
|
||||
@media (max-width: 479px) {
|
||||
/*
|
||||
* Fit in small screen
|
||||
*/
|
||||
.uk-notify {
|
||||
left: 10px;
|
||||
right: 10px;
|
||||
width: auto;
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
/* Sub-object: `uk-notify-message`
|
||||
========================================================================== */
|
||||
.uk-notify-message {
|
||||
position: relative;
|
||||
margin-bottom: 10px;
|
||||
padding: 15px;
|
||||
background: #444444;
|
||||
color: #ffffff;
|
||||
font-size: 16px;
|
||||
line-height: 22px;
|
||||
cursor: pointer;
|
||||
border: 1px solid #444444;
|
||||
border-radius: 4px;
|
||||
}
|
||||
/* Close in notify
|
||||
========================================================================== */
|
||||
.uk-notify-message > .uk-close {
|
||||
visibility: hidden;
|
||||
float: right;
|
||||
}
|
||||
.uk-notify-message:hover > .uk-close {
|
||||
visibility: visible;
|
||||
}
|
||||
/* Modifier: `uk-alert-info`
|
||||
========================================================================== */
|
||||
.uk-notify-message-primary {
|
||||
background: #ebf7fd;
|
||||
color: #2d7091;
|
||||
border-color: rgba(45, 112, 145, 0.3);
|
||||
}
|
||||
/* Modifier: `uk-alert-success`
|
||||
========================================================================== */
|
||||
.uk-notify-message-success {
|
||||
background: #f2fae3;
|
||||
color: #659f13;
|
||||
border-color: rgba(101, 159, 19, 0.3);
|
||||
}
|
||||
/* Modifier: `uk-notify-message-warning`
|
||||
========================================================================== */
|
||||
.uk-notify-message-warning {
|
||||
background: #fffceb;
|
||||
color: #e28327;
|
||||
border-color: rgba(226, 131, 39, 0.3);
|
||||
}
|
||||
/* Modifier: `uk-notify-message-danger`
|
||||
========================================================================== */
|
||||
.uk-notify-message-danger {
|
||||
background: #fff1f0;
|
||||
color: #d85030;
|
||||
border-color: rgba(216, 80, 48, 0.3);
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user