Data Tables Generator by Supsystic - Version 1.9.0

Version Description

/ 30.08.2018 = * Hotfix update error

Download this release

Release Info

Developer supsystic.com
Plugin Icon 128x128 Data Tables Generator by Supsystic
Version 1.9.0
Comparing to
See all releases

Code changes from version 1.8.7 to 1.9.0

app/SupsysticTables.php CHANGED
@@ -18,7 +18,7 @@ class SupsysticTables
18
 
19
  $menuSlug = 'supsystic-tables';
20
  $pluginPath = dirname(dirname(__FILE__));
21
- $environment = new Rsc_Environment('st', '1.8.7', $pluginPath);
22
 
23
  /* Configure */
24
  $environment->configure(
18
 
19
  $menuSlug = 'supsystic-tables';
20
  $pluginPath = dirname(dirname(__FILE__));
21
+ $environment = new Rsc_Environment('st', '1.9.0', $pluginPath);
22
 
23
  /* Configure */
24
  $environment->configure(
app/assets/css/jquery-slider.css ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * jQuery UI Slider 1.8.23
3
+ *
4
+ * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about)
5
+ * Dual licensed under the MIT or GPL Version 2 licenses.
6
+ * http://jquery.org/license
7
+ *
8
+ * http://docs.jquery.com/UI/Slider#theming
9
+ */
10
+ .ui-slider { position: relative; text-align: left; }
11
+ .ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }
12
+ .ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; }
13
+
14
+ .ui-slider-horizontal { height: .8em; }
15
+ .ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }
16
+ .ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }
17
+ .ui-slider-horizontal .ui-slider-range-min { left: 0; }
18
+ .ui-slider-horizontal .ui-slider-range-max { right: 0; }
19
+
20
+ .ui-slider-vertical { width: .8em; height: 100px; }
21
+ .ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; }
22
+ .ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }
23
+ .ui-slider-vertical .ui-slider-range-min { bottom: 0; }
24
+ .ui-slider-vertical .ui-slider-range-max { top: 0; }
app/assets/css/jquery-ui.min.css ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*! jQuery UI - v1.11.2 - 2014-11-13
2
+ * http://jqueryui.com
3
+ * Includes: core.css, draggable.css, resizable.css, selectable.css, sortable.css, accordion.css, autocomplete.css, button.css, datepicker.css, dialog.css, menu.css, progressbar.css, selectmenu.css, slider.css, spinner.css, tabs.css, tooltip.css, theme.css
4
+ * To view and modify this theme, visit http://jqueryui.com/themeroller/?tr%26ffDefault=Helvetica%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=5px&bgColorHeader=888888&bgTextureHeader=highlight_hard&bgImgOpacityHeader=15&borderColorHeader=404040&fcHeader=ffffff&iconColorHeader=cccccc&bgColorContent=121212&bgTextureContent=gloss_wave&bgImgOpacityContent=16&borderColorContent=404040&fcContent=eeeeee&iconColorContent=bbbbbb&bgColorDefault=adadad&bgTextureDefault=highlight_soft&bgImgOpacityDefault=35&borderColorDefault=cccccc&fcDefault=333333&iconColorDefault=666666&bgColorHover=dddddd&bgTextureHover=highlight_soft&bgImgOpacityHover=60&borderColorHover=dddddd&fcHover=000000&iconColorHover=c98000&bgColorActive=121212&bgTextureActive=inset_soft&bgImgOpacityActive=15&borderColorActive=000000&fcActive=ffffff&iconColorActive=f29a00&bgColorHighlight=555555&bgTextureHighlight=highlight_hard&bgImgOpacityHighlight=55&borderColorHighlight=404040&fcHighlight=cccccc&iconColorHighlight=aaaaaa&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a
5
+ * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
6
+
7
+ .ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-selectable{-ms-touch-action:none;touch-action:none}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black}.ui-sortable-handle{-ms-touch-action:none;touch-action:none}.ui-accordion .ui-accordion-header{display:block;cursor:pointer;position:relative;margin:2px 0 0 0;padding:.5em .5em .5em .7em;min-height:0;font-size:100%}.ui-accordion .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-icons .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-header .ui-accordion-header-icon{position:absolute;left:.5em;top:50%;margin-top:-8px}.ui-accordion .ui-accordion-content{padding:1em 2.2em;border-top:0;overflow:auto}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-button{display:inline-block;position:relative;padding:0;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;overflow:visible}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.ui-button .ui-button-text{display:block;line-height:normal}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em}input.ui-button{padding:.4em 1em}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}input.ui-button::-moz-focus-inner,button.ui-button::-moz-focus-inner{border:0;padding:0}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:45%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-dialog{overflow:hidden;position:absolute;top:0;left:0;padding:.2em;outline:0}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0;white-space:nowrap;width:90%;overflow:hidden;text-overflow:ellipsis}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:20px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin-top:.5em;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-se{width:12px;height:12px;right:-5px;bottom:-5px;background-position:16px 16px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:none}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{position:relative;margin:0;padding:3px 1em 3px .4em;cursor:pointer;min-height:0;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-progressbar{height:2em;text-align:left;overflow:hidden}.ui-progressbar .ui-progressbar-value{margin:-1px;height:100%}.ui-progressbar .ui-progressbar-overlay{background:url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");height:100%;filter:alpha(opacity=25);opacity:0.25}.ui-progressbar-indeterminate .ui-progressbar-value{background-image:none}.ui-selectmenu-menu{padding:0;margin:0;position:absolute;top:0;left:0;display:none}.ui-selectmenu-menu .ui-menu{overflow:auto;overflow-x:hidden;padding-bottom:1px}.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup{font-size:1em;font-weight:bold;line-height:1.5;padding:2px 0.4em;margin:0.5em 0 0 0;height:auto;border:0}.ui-selectmenu-open{display:block}.ui-selectmenu-button{display:inline-block;overflow:hidden;position:relative;text-decoration:none;cursor:pointer}.ui-selectmenu-button span.ui-icon{right:0.5em;left:auto;margin-top:-8px;position:absolute;top:50%}.ui-selectmenu-button span.ui-selectmenu-text{text-align:left;padding:0.4em 2.1em 0.4em 1em;display:block;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;-ms-touch-action:none;touch-action:none}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-spinner{position:relative;display:inline-block;overflow:hidden;padding:0;vertical-align:middle}.ui-spinner-input{border:none;background:none;color:inherit;padding:0;margin:.2em 0;vertical-align:middle;margin-left:.4em;margin-right:22px}.ui-spinner-button{width:16px;height:50%;font-size:.5em;padding:0;margin:0;text-align:center;position:absolute;cursor:default;display:block;overflow:hidden;right:0}.ui-spinner a.ui-spinner-button{border-top:none;border-bottom:none;border-right:none}.ui-spinner .ui-icon{position:absolute;margin-top:-8px;top:50%;left:0}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}.ui-spinner .ui-icon-triangle-1-s{background-position:-65px -16px}.ui-tabs{position:relative;padding:.2em}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:1px .2em 0 0;border-bottom-width:0;padding:0;white-space:nowrap}.ui-tabs .ui-tabs-nav .ui-tabs-anchor{float:left;padding:.5em 1em;text-decoration:none}.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px;padding-bottom:1px}.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor{cursor:text}.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor{cursor:pointer}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}body .ui-tooltip{border-width:2px}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content a{color:#eee}.ui-widget-header a{color:#fff}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#333;text-decoration:none}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited{color:#000;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #000;background:#121212 url("images/ui-bg_inset-soft_15_121212_1x100.png") 50% 50% repeat-x;font-weight:normal;color:#fff}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#fff;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #404040;background:#555 url("images/ui-bg_highlight-hard_55_555555_1x100.png") 50% top repeat-x;color:#ccc}
8
+ /*.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#ccc}*/
9
+ .ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-state-active .ui-icon{background-image:url("images/ui-icons_f29a00_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("images/ui-icons_aaaaaa_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_cd0a0a_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}
10
+ /*.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:5px}
11
+ .ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:5px}
12
+ .ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:5px}
13
+ .ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:5px}*/
14
+ .ui-widget-overlay{background:#aaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px}
app/assets/css/jquery-ui.structure.min.css ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ /*! jQuery UI - v1.11.2 - 2014-11-09
2
+ * http://jqueryui.com
3
+ * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
4
+
5
+ .ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-selectable{-ms-touch-action:none;touch-action:none}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black}.ui-sortable-handle{-ms-touch-action:none;touch-action:none}.ui-accordion .ui-accordion-header{display:block;cursor:pointer;position:relative;margin:2px 0 0 0;padding:.5em .5em .5em .7em;min-height:0;font-size:100%}.ui-accordion .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-icons .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-header .ui-accordion-header-icon{position:absolute;left:.5em;top:50%;margin-top:-8px}.ui-accordion .ui-accordion-content{padding:1em 2.2em;border-top:0;overflow:auto}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-button{display:inline-block;position:relative;padding:0;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;overflow:visible}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.ui-button .ui-button-text{display:block;line-height:normal}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em}input.ui-button{padding:.4em 1em}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}input.ui-button::-moz-focus-inner,button.ui-button::-moz-focus-inner{border:0;padding:0}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:45%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-dialog{overflow:hidden;position:absolute;top:0;left:0;padding:.2em;outline:0}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0;white-space:nowrap;width:90%;overflow:hidden;text-overflow:ellipsis;color: white;}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:20px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin-top:.5em;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-se{width:12px;height:12px;right:-5px;bottom:-5px;background-position:16px 16px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:none}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{position:relative;margin:0;padding:3px 1em 3px .4em;cursor:pointer;min-height:0;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-progressbar{height:2em;text-align:left;overflow:hidden}.ui-progressbar .ui-progressbar-value{margin:-1px;height:100%}.ui-progressbar .ui-progressbar-overlay{background:url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");height:100%;filter:alpha(opacity=25);opacity:0.25}.ui-progressbar-indeterminate .ui-progressbar-value{background-image:none}.ui-selectmenu-menu{padding:0;margin:0;position:absolute;top:0;left:0;display:none}.ui-selectmenu-menu .ui-menu{overflow:auto;overflow-x:hidden;padding-bottom:1px}.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup{font-size:1em;font-weight:bold;line-height:1.5;padding:2px 0.4em;margin:0.5em 0 0 0;height:auto;border:0}.ui-selectmenu-open{display:block}.ui-selectmenu-button{display:inline-block;overflow:hidden;position:relative;text-decoration:none;cursor:pointer}.ui-selectmenu-button span.ui-icon{right:0.5em;left:auto;margin-top:-8px;position:absolute;top:50%}.ui-selectmenu-button span.ui-selectmenu-text{text-align:left;padding:0.4em 2.1em 0.4em 1em;display:block;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;-ms-touch-action:none;touch-action:none}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-spinner{position:relative;display:inline-block;overflow:hidden;padding:0;vertical-align:middle}.ui-spinner-input{border:none;background:none;color:inherit;padding:0;margin:.2em 0;vertical-align:middle;margin-left:.4em;margin-right:22px}.ui-spinner-button{width:16px;height:50%;font-size:.5em;padding:0;margin:0;text-align:center;position:absolute;cursor:default;display:block;overflow:hidden;right:0}.ui-spinner a.ui-spinner-button{border-top:none;border-bottom:none;border-right:none}.ui-spinner .ui-icon{position:absolute;margin-top:-8px;top:50%;left:0}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}.ui-spinner .ui-icon-triangle-1-s{background-position:-65px -16px}.ui-tabs{position:relative;padding:.2em}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:1px .2em 0 0;border-bottom-width:0;padding:0;white-space:nowrap}.ui-tabs .ui-tabs-nav .ui-tabs-anchor{float:left;padding:.5em 1em;text-decoration:none}.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px;padding-bottom:1px}.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor{cursor:text}.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor{cursor:pointer}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}body .ui-tooltip{border-width:2px}
app/assets/css/jquery-ui.theme.min.css ADDED
@@ -0,0 +1,245 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*! jQuery UI - v1.11.2 - 2014-11-13
2
+ * http://jqueryui.com
3
+ * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
4
+
5
+ .ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content a{color:#000}.ui-widget-header a{color:#fff}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#333;text-decoration:none}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited{color:#000;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #000;background:#121212 url("images/ui-bg_inset-soft_15_121212_1x100.png") 50% 50% repeat-x;font-weight:normal;color:#fff}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#fff;text-decoration:none}
6
+ .ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{
7
+ border:1px solid #404040;
8
+ background:#555 url("images/ui-bg_highlight-hard_55_555555_1x100.png") 50% top repeat-x;
9
+ color:#ccc}
10
+ /*.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,*/.ui-widget-header .ui-state-highlight a{color:#ccc}
11
+
12
+ .ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-state-active .ui-icon{background-image:url("images/ui-icons_f29a00_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("images/ui-icons_aaaaaa_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_cd0a0a_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}
13
+ /*.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:5px}
14
+ .ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:5px}
15
+ .ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:5px}
16
+ .ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:5px}*/
17
+ .ui-widget-overlay{background:#aaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px}
18
+ /*table, th {*/
19
+ /*background: white !important;*/
20
+ /*}*/
21
+ .ui-jqgrid-labels {
22
+ height: 50px !important;
23
+ }
24
+ .ui-widget-content.ui-dialog-content {
25
+ color: #444;
26
+ }
27
+ .ui-widget-content tr {
28
+ height: 50px;
29
+ }
30
+ .ui-jqgrid-pager {
31
+ height: auto !important;
32
+ }
33
+ .ui-state-default, .ui-row-ltr{
34
+ border-left-color: transparent !important;
35
+ border-right-color: transparent !important;
36
+ border-bottom-color: transparent !important;
37
+ }
38
+
39
+ .ui-jqgrid-sortable {
40
+ font-weight: 700;
41
+ }
42
+ .ui-state-hover {
43
+ background: #e8eded !important;
44
+ }
45
+ .ui-state-highlight {
46
+ color: black !important;
47
+ background: #e8eded !important;
48
+ }
49
+ .ui-jqgrid-htable {
50
+ font-size: 14px !important;
51
+ }
52
+ .ui-row-ltr {
53
+ font-size: 13px !important;
54
+ }
55
+ .ui-icon {
56
+ background: transparent !important;
57
+ text-indent: inherit;
58
+ font: normal normal normal 14px/1 FontAwesome;
59
+ color: black !important;
60
+ }
61
+ .trash-btn {
62
+ border-radius: 4px;
63
+ background: lightgrey;
64
+ padding: 8px;
65
+ font-size: 18px;
66
+ width: 30px;
67
+ text-align: center;
68
+ border: 1px double rgb(177, 177, 177);
69
+ opacity: 0.6;
70
+ color: black !important;
71
+ }
72
+ .trash-btn:hover {
73
+ opacity: 0.8;
74
+ }
75
+ .ui-widget-header {
76
+ background: #e8eded !important;
77
+ padding: 6px !important;
78
+ }
79
+ .ui-jqgrid-title {
80
+ font-size: 18px;
81
+ color: white;
82
+ }
83
+ .ui-pg-button:hover {
84
+ background: transparent !important;
85
+ }
86
+ .ui-icon-search {
87
+ opacity: 0.6;
88
+ }
89
+ .ui-icon-search:hover {
90
+ opacity: 0.8;
91
+ }
92
+ .ui-icon-refresh {
93
+ opacity: 0.6;
94
+ }
95
+ .ui-icon-refresh:hover {
96
+ opacity: 0.8;
97
+ }
98
+ .ui-icon-seek-next {
99
+ opacity: 0.6;
100
+ }
101
+ .ui-icon-seek-next:hover {
102
+ opacity: 0.8;
103
+ }
104
+ .ui-icon-seek-end{
105
+ opacity: 0.6;
106
+ }
107
+ .ui-icon-seek-end:hover {
108
+ opacity: 0.8;
109
+ }
110
+ .ui-icon-seek-prev {
111
+ opacity: 0.6;
112
+ }
113
+ .ui-icon-seek-prev:hover {
114
+ opacity: 0.8;
115
+ }
116
+ .ui-icon-seek-first {
117
+ opacity: 0.6;
118
+ }
119
+ .ui-icon-seek-first:hover {
120
+ opacity: 0.8;
121
+ }
122
+ #wpfBlacklistTblNav_center {
123
+ font-size: 14px;
124
+ }
125
+ .ui-pg-input {
126
+ height: inherit !important;
127
+ font-size: 14px !important;
128
+ }
129
+ .ui-pg-selbox {
130
+ height: inherit !important;
131
+ font-size: 14px !important;
132
+ }
133
+ .ui-icon-triangle-1-n {
134
+ position: relative;
135
+ bottom: 11px;
136
+ left: 1px;
137
+ }
138
+ .ui-icon-triangle-1-s {
139
+ position: relative;
140
+ bottom: 8px;
141
+ left: 1px;
142
+ }
143
+ .ui-jqgrid-titlebar {
144
+ height: 30px;
145
+ }
146
+ @-moz-document url-prefix()
147
+ {
148
+ #wpfBlacklistTbl_cb {
149
+ width: 23px !important;
150
+ }
151
+ }
152
+ #last_wpfBlacklistTblNav, #next_wpfBlacklistTblNav {
153
+ padding-left: 5px;
154
+ }
155
+ #first_wpfBlacklistTblNav, #prev_wpfBlacklistTblNav {
156
+ padding-right: 5px;
157
+ }
158
+ /*#jqgh_wpfBlacklistTbl_id {
159
+ text-align: left;
160
+ padding-left: 5px;
161
+ }*/
162
+ .ui-icon-closethick {
163
+ color: #000 !important;
164
+ }
165
+ .ui-dialog-titlebar-close {
166
+ border:none;
167
+ }
168
+ .ui-state-active {
169
+ border: none !important;
170
+ }
171
+ .ui-widget-overlay {
172
+ background: black !important;
173
+ }
174
+ .ui-icon-circle-triangle-n {
175
+ color: white !important;
176
+ }
177
+ .ui-icon-circle-triangle-s {
178
+ color: white !important;
179
+ }
180
+ .ui-state-hover .s-ico {
181
+ display: inline !important;
182
+ }
183
+ .ui-jqgrid-titlebar {
184
+ display: none !important;
185
+ }
186
+ /*Checkbox header does not have any sorting*/
187
+ thead .ui-jqgrid-labels th[id$='_cb'] .s-ico {
188
+ display: none !important;
189
+ }
190
+ /*tables pagination panel*/
191
+ .supsystic-tbl-pagination-shell {
192
+ /*width: calc(100% - 450px);*/
193
+ margin-top: -7px;
194
+ }
195
+ .supsystic-tbl-pagination-shell .ui-jqgrid-pager {
196
+ width: auto !important;
197
+ }
198
+ .supsystic-tbl-pagination-shell .ui-paging-info {
199
+ display: inline;
200
+ }
201
+ .supsystic-tbl-pagination-shell .ui-pg-selbox {
202
+ margin-left: 20px;
203
+ }
204
+ .supsystic-tbl-pagination-shell .ui-pg-table td:last-of-type{
205
+ padding-right: 2%;
206
+ }
207
+ /*popup dialog*/
208
+ .ui-dialog .ui-dialog-title {
209
+ color: black !important;
210
+ }
211
+ /*jquery slider*/
212
+ .ui-slider.ui-widget-content:not(.iris-slider-offset) {
213
+ background: transparent;
214
+ border-radius: 0;
215
+ border: 1px solid black;
216
+ }
217
+ .ui-slider.ui-widget-content .ui-slider-handle {
218
+ background: #fff;
219
+ border: 1px solid #000 !important;
220
+ border-radius: 0;
221
+ }
222
+ .ui-slider.ui-widget-content .ui-slider-handle:hover,
223
+ .ui-slider.ui-widget-content .ui-slider-handle.ui-state-hover,
224
+ .ui-slider.ui-widget-content .ui-slider-handle.ui-state-active {
225
+ border-color: #4ae8ea !important;
226
+ }
227
+ /*font awesome stylized icons*/
228
+ .ui-icon-closethick:before {
229
+ content: "\f00d";
230
+ }
231
+ .ui-icon-refresh:before {
232
+ content: "\f021";
233
+ }
234
+ .ui-icon-circle-triangle-s:before {
235
+ content: "\f0aa";
236
+ }
237
+ .ui-icon-circle-triangle-n:before {
238
+ content: "\f0ab";
239
+ }
240
+ .ui-icon-search:before {
241
+ content: "\f002";
242
+ }
243
+ .ui-dialog-titlebar-close::before { /*disallow other close btns style be here*/
244
+ content: "" !important;
245
+ }
app/assets/css/supsystic-ui.css CHANGED
@@ -267,7 +267,7 @@ ul.supsystic-bar-controls > li.separator {
267
  z-index: 10;
268
  }
269
 
270
- .ui-widget-content {
271
  background: #fff !important;
272
  padding: 15px 5px !important;
273
  z-index: 100001;
@@ -635,7 +635,8 @@ h3.nav-tab-wrapper {
635
  }
636
 
637
  .supsystic-plugin .ui-pg-table {
638
- color: #a6aaab;
 
639
  }
640
 
641
  .supsystic-plugin .ui-pg-table .ui-pg-input {
267
  z-index: 10;
268
  }
269
 
270
+ .ui-dialog.ui-widget-content {
271
  background: #fff !important;
272
  padding: 15px 5px !important;
273
  z-index: 100001;
635
  }
636
 
637
  .supsystic-plugin .ui-pg-table {
638
+ /*color: #a6aaab;*/
639
+ color: black;
640
  }
641
 
642
  .supsystic-plugin .ui-pg-table .ui-pg-input {
index.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin Name: Data Tables Generator by Supsystic
5
  * Plugin URI: http://supsystic.com
6
  * Description: Create and manage beautiful data tables with custom design. No HTML knowledge is required
7
- * Version: 1.8.7
8
  * Author: supsystic.com
9
  * Author URI: http://supsystic.com
10
  */
4
  * Plugin Name: Data Tables Generator by Supsystic
5
  * Plugin URI: http://supsystic.com
6
  * Description: Create and manage beautiful data tables with custom design. No HTML knowledge is required
7
+ * Version: 1.9.0
8
  * Author: supsystic.com
9
  * Author URI: http://supsystic.com
10
  */
readme.txt CHANGED
@@ -1,48 +1,48 @@
1
  === Data Tables Generator by Supsystic ===
2
  Contributors: supsystic.com
3
  Tags: csv, csv file, csv to table, excel, table, tablesorter, post, data table, table, database, html table, table generator, builder, generator, cells, area chart, bar chart, candlestick chart, canvas, chart, charting, charts, column chart, gauge chart, geo chart, google chart, google visualization api, graph, graphing, graphs, html5, line chart, pie chart, scatter chart, spreadsheet, visualisation, visualise data, visualization, visualize data
4
- Tested up to: 4.9.7
5
- Stable tag: 1.8.7
6
 
7
  Create data tables with charts and graphs. Custom design, navigation, searching and ordering functions. Export to PDF, CSV, Print. Excel spreadsheet
8
 
9
  == Description ==
10
 
11
- Create and manage tables from admin panel quick, easy and effective. Make data table responsive with interactive charts and graphs, sorting, pagination, filtering and more. [Data Tables by Supsystic](http://supsystic.com/plugins/data-tables-generator-plugin?utm_source=wordpress&utm_medium=description&utm_campaign=datatables "Data Tables WordPress plugin") plugin features:
12
 
13
- * No coding require, responsive tables
14
  * [FrontEnd Table Editing](http://supsystic.com/product/data-tables-generator-plugin/#examples "FrontEnd Data Table Editing Example")
15
  * FrontEnd Table export - CSV, Excel, PDF
16
  * Diagrams, Charts and Graphs
17
  * Formulas support, HTML tables support for data cells
18
  * Enable table Caption, Header, Footer
19
  * "Bold" and "Italic" font style support for the data table cells
20
- * Change color of the cells and fonts
21
  * [Navigation with Searching and Ordering functions](http://supsystic.com/product/data-tables-generator-plugin/#examples "Data Table navigation with Searching and Ordering functions")
22
  * Various style setting appropriated for any sites type
23
  * SEO friendly, content of DataTable picked up by search engines
24
  * Build diagrams from the data table
25
  * [Google Charts integration](http://supsystic.com/table-with-diagram-example/ "Google Charts WordPress plugin example")
26
- * [Automatically import from Google Sheets](https://supsystic.com/documentation/synchronization-table-google-sheet/ "Autoupdates from Google Sheets")
27
  * [Data Table Examples](http://supsystic.com/data-tables-examples?utm_source=wordpress&utm_medium=examples&utm_campaign=datatables "Data Table Examples")
28
 
29
- Data Tables Generator is a new plugin created by Supsystic, which allows you to process and manage SEO friendly data tables quick and easy. Plugin able to structure information and can be adjusted for every need. Many ways of functional and visual customization of the tables improve site design and let modify it to suit any different individual or task. Searching, ordering and pagination are the functions that help everyone to find the needed information in a second. Intuitive Settings panel and responsive for a regular user Editor saved your time to spend it for other useful things or relaxation.
30
 
31
  HTML tables responsive and awesome on all devices
32
 
33
- [youtube https://www.youtube.com/watch?v=Fa3EI7-oBfc]
34
 
35
  = Data Tables Plugin Support =
36
 
37
- If you have any problem or feature request for the Data Tables Generator by Supsystic, please [let us know](http://supsystic.com/contact-us/ "Contact Us")!
38
 
39
- This [guide](https://supsystic.com/make-requests-support-service/ "How to Make Requests to Support Service") helps you to provide the right information about your issue.
40
 
41
  = Translate Data Table Generator by Supsystic to Your Language =
42
 
43
  You have an incredible opportunity to get PRO version of the photo gallery for free. Just make translation of the Data Table Generator by Supsystic plugin!
44
- [Contact Us](http://supsystic.com/plugins/data-tables-generator-plugin#contact?utm_source=wordpress&utm_medium=contactus&utm_campaign=datatables "Contact Us") if you translate the plugin.
45
- Avaible data table plugin translations:
46
 
47
  * English
48
  * Bulgarian
@@ -53,7 +53,7 @@ Avaible data table plugin translations:
53
  * German
54
  * Greek
55
  * Hungarian
56
- * Italiano
57
  * Persian
58
  * Polish
59
  * Portuguese (Brazil)
@@ -109,27 +109,25 @@ How to Create Data Tables in WordPress -
109
  2. Fill the table.
110
  3. [Customize the data](https://supsystic.com/docs/data-editor/ "Data Editor") – here you can:
111
 
112
- * insert spreadsheet row and column to the table
113
  * set the font of text – bold and italic
114
  * choose spreadsheet text and background color
115
  * specify spreadsheet horizontal and vertical alignment
116
 
117
- The following opportunities are available by clicking the right button of mouse (choose the certain cell, column or row and click the right button of mouse) –
118
-
119
  * cancel or restore your actions
120
  * insert spreadsheet row or column where you want
121
  * remove spreadsheet row or column
122
  * enable “Read only” mode for any cells, rows and columns and even for the whole table
123
  * set the alignment of text
124
 
125
- Also you have the ability to change the spreadsheet column / row width – use your mouse, move the cursor on right side of the column boundary / (bottom side of the row boundary) you want until it becomes a resize cursor, and then drag the boundary.
126
-
127
  = Step 3: Customizing of Data Tables by Supsystic =
128
 
129
  In order to return to configuration of tables – click the “Settings” button.
130
  Here you can set all the options of [Data Tables Generator plugin](https://supsystic.com/plugins/data-tables-generator-plugin/ "Data Tables Generator plugin"). Simply navigate the corresponding section of properties – Table Elements, Features, Styling.
131
 
132
- Important! After changing the settings of plugin don’t forget to click “Save” button.
133
 
134
  = Table Elements =
135
 
@@ -140,9 +138,9 @@ Important! After changing the settings of plugin don’t forget to click “Save
140
  = Features =
141
 
142
  * Auto width
143
- * Ordering – sort the table by the characteristics that you want.
144
- * Pagination – enable page control, divide content of the table into discrete pages lets users tap through a series of related pages.
145
- * Searching – enable search by the table.
146
  * State saving – restore table state on page reload.
147
  * Responsive Modes
148
  * CSS Editor
@@ -150,18 +148,18 @@ Important! After changing the settings of plugin don’t forget to click “Save
150
  * Save Editable Fields
151
  * Export Tables - CSV, Excel, PDF
152
  * Import Tables - CSV, Excel, Google Sheets
153
- * Autoupdate from Google Sheets
154
  * Diagrams
155
  * Table History
156
 
157
  = Styling =
158
 
159
- * Borders – you can select “Cell” border – adds border around all four sides of each cells or “Row”border – adds border only above and under each row.
160
  * Compact – reduce the amount of white space.
161
- * Highlighting – enable row highlighting on mouse over.
162
- * Disable wrapping – disable wrapping of content in the table, so all text in the cells will be on a single line.
163
- * Highlight the order column – highlight the column that the table data is currently ofdered on.
164
- * Row striping – for example – you use a table, but the table’s rows are difficult to separate visually, especially when there are many columns (or multiple lines to a row) – add row striping to a table, it will display rows background in two similar shades of color to alternately.
165
 
166
  = Step 4: Preview settings (include charts and graphs preview) =
167
 
@@ -172,7 +170,7 @@ After you change some settings – with responsive data tables plugin, you can i
172
  1. On the left navigation menu click “Tables”.
173
  2. Find the table which you need and copy the shortcode.
174
  3. Paste the shortcode into your post or page and Data Tables Generator by Supsystic will automatically create table on your page.
175
- Important! Shortcode must be inserted in a text editor page, and not in the visual.
176
 
177
  = Our plugins =
178
 
@@ -194,6 +192,32 @@ Important! Shortcode must be inserted in a text editor page, and not in the visu
194
 
195
  == Changelog ==
196
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
197
  = 1.8.7 / 24.07.2018 =
198
  * Fix Multisite Installation process
199
  * Fixed the problem: Clicking on the cell raises the table up
1
  === Data Tables Generator by Supsystic ===
2
  Contributors: supsystic.com
3
  Tags: csv, csv file, csv to table, excel, table, tablesorter, post, data table, table, database, html table, table generator, builder, generator, cells, area chart, bar chart, candlestick chart, canvas, chart, charting, charts, column chart, gauge chart, geo chart, google chart, google visualization api, graph, graphing, graphs, html5, line chart, pie chart, scatter chart, spreadsheet, visualisation, visualise data, visualization, visualize data
4
+ Tested up to: 4.9.8
5
+ Stable tag: 1.9.0
6
 
7
  Create data tables with charts and graphs. Custom design, navigation, searching and ordering functions. Export to PDF, CSV, Print. Excel spreadsheet
8
 
9
  == Description ==
10
 
11
+ Create and manage tables from the admin panel quickly, easily and effectively. Make data tables responsive with interactive charts and graphs, sorting, pagination, filtering and more. [Data Tables by Supsystic](http://supsystic.com/plugins/data-tables-generator-plugin?utm_source=wordpress&utm_medium=description&utm_campaign=datatables "Data Tables WordPress plugin") plugin features:
12
 
13
+ * No coding required, responsive tables
14
  * [FrontEnd Table Editing](http://supsystic.com/product/data-tables-generator-plugin/#examples "FrontEnd Data Table Editing Example")
15
  * FrontEnd Table export - CSV, Excel, PDF
16
  * Diagrams, Charts and Graphs
17
  * Formulas support, HTML tables support for data cells
18
  * Enable table Caption, Header, Footer
19
  * "Bold" and "Italic" font style support for the data table cells
20
+ * Change cell and font color
21
  * [Navigation with Searching and Ordering functions](http://supsystic.com/product/data-tables-generator-plugin/#examples "Data Table navigation with Searching and Ordering functions")
22
  * Various style setting appropriated for any sites type
23
  * SEO friendly, content of DataTable picked up by search engines
24
  * Build diagrams from the data table
25
  * [Google Charts integration](http://supsystic.com/table-with-diagram-example/ "Google Charts WordPress plugin example")
26
+ * [Automatic import from Google Sheetss](https://supsystic.com/documentation/synchronization-table-google-sheet/ "Autoupdates from Google Sheets")
27
  * [Data Table Examples](http://supsystic.com/data-tables-examples?utm_source=wordpress&utm_medium=examples&utm_campaign=datatables "Data Table Examples")
28
 
29
+ Data Tables Generator is a new plugin created by Supsystic. It allows you to process and manage SEO friendly data tables quickly and easily. This plugin can structure information and can be adjusted to fit every need. Many ways of functional and visual customization of the tables improve site design and let you modify it to cater to a particular individual or a specific task. Searching, ordering and pagination are the functions that help everyone find the required information in a matter of seconds. The intuitive Settings panel and the responsive Editor save lots of time that you would much rather allocate for other useful things or relaxation.
30
 
31
  HTML tables responsive and awesome on all devices
32
 
33
+ [youtube https://www.youtube.com/watch?v=RZ2I-aCiLZE]
34
 
35
  = Data Tables Plugin Support =
36
 
37
+ If you have any any problem or a tailored request for the Data Tables Generator by Supsystic, please [let us know](http://supsystic.com/contact-us/ "Contact Us")!
38
 
39
+ This [guide](https://supsystic.com/make-requests-support-service/ "How to Make Requests to Support Service") helps you provide the right information on your issue.
40
 
41
  = Translate Data Table Generator by Supsystic to Your Language =
42
 
43
  You have an incredible opportunity to get PRO version of the photo gallery for free. Just make translation of the Data Table Generator by Supsystic plugin!
44
+ [Contact Us](http://supsystic.com/plugins/data-tables-generator-plugin#contact?utm_source=wordpress&utm_medium=contactus&utm_campaign=datatables "Contact Us") if you are willing to translate the plugin.
45
+ Available data table plugin translations:
46
 
47
  * English
48
  * Bulgarian
53
  * German
54
  * Greek
55
  * Hungarian
56
+ * Italian
57
  * Persian
58
  * Polish
59
  * Portuguese (Brazil)
109
  2. Fill the table.
110
  3. [Customize the data](https://supsystic.com/docs/data-editor/ "Data Editor") – here you can:
111
 
112
+ * Add a spreadsheet row and column to the table
113
  * set the font of text – bold and italic
114
  * choose spreadsheet text and background color
115
  * specify spreadsheet horizontal and vertical alignment
116
 
117
+ The following options are available by clicking the right mouse button (choose the certain cell, column or row and click the right button of mouse) –
 
118
  * cancel or restore your actions
119
  * insert spreadsheet row or column where you want
120
  * remove spreadsheet row or column
121
  * enable “Read only” mode for any cells, rows and columns and even for the whole table
122
  * set the alignment of text
123
 
124
+ You can also change the spreadsheet column / row width – use your mouse, move the mouse pointer to right side of the column boundary / (bottom side of the row boundary) until a resize pointer appears, and then drag the boundary.
 
125
  = Step 3: Customizing of Data Tables by Supsystic =
126
 
127
  In order to return to configuration of tables – click the “Settings” button.
128
  Here you can set all the options of [Data Tables Generator plugin](https://supsystic.com/plugins/data-tables-generator-plugin/ "Data Tables Generator plugin"). Simply navigate the corresponding section of properties – Table Elements, Features, Styling.
129
 
130
+ Important! After changing the plugin settings don’t forget to click “Save”.
131
 
132
  = Table Elements =
133
 
138
  = Features =
139
 
140
  * Auto width
141
+ * Ordering – sort the table by the desired characteristics
142
+ * Pagination – enable page control, divide content of the table into discrete pages to let users tap through a series of related pages.
143
+ * Searching – enable table search.
144
  * State saving – restore table state on page reload.
145
  * Responsive Modes
146
  * CSS Editor
148
  * Save Editable Fields
149
  * Export Tables - CSV, Excel, PDF
150
  * Import Tables - CSV, Excel, Google Sheets
151
+ * Auto update from Google Sheets
152
  * Diagrams
153
  * Table History
154
 
155
  = Styling =
156
 
157
+ * Borders – you can select “Cell” border – inserts a border around all four sides of each cell or “Row” border – inserts a border only above and under each row.
158
  * Compact – reduce the amount of white space.
159
+ * Highlighting – enable row highlighting as the mouse pointer hovers over an object.
160
+ * Disable wrapping – disable wrapping of the table content, so all text in the cells will be on a single line.
161
+ * Highlight the order column – highlight the column that the table data is currently ordered by.
162
+ * Row striping – for example – you use a table, but the table’s rows are difficult to separate visually, especially when there are many columns (or multiple lines to a row) – add row striping to a table, it will display rows background in two similar shades of color.
163
 
164
  = Step 4: Preview settings (include charts and graphs preview) =
165
 
170
  1. On the left navigation menu click “Tables”.
171
  2. Find the table which you need and copy the shortcode.
172
  3. Paste the shortcode into your post or page and Data Tables Generator by Supsystic will automatically create table on your page.
173
+ Important! Shortcode must be inserted in a text editor page, and not in the visual environment.
174
 
175
  = Our plugins =
176
 
192
 
193
  == Changelog ==
194
 
195
+ = 1.9.0 / 30.08.2018 =
196
+ * Hotfix update error
197
+
198
+ = 1.8.9 / 28.08.2018 =
199
+ * Fix for rounding up the percent values in editable fields
200
+ * Added ability to create diagrams for shortcodes of other plugins
201
+ * Fix creating multiple tables
202
+ * Changed CRUD for tables list
203
+ * Fix border-bottom for Fixed Columns
204
+ * Fixed default css text in editor
205
+ * Fixed crud bugs
206
+ * Fix editable fields after export
207
+ * Fix export to PDF with multiple rows in a cell
208
+ * Fixed tooltips displaying after search action
209
+ * Add custom roles for Roles Restrictions Options
210
+
211
+ = 1.8.8 / 10.08.2018 =
212
+ * Added the ability to create diagrams for cells with formulas and shortcodes
213
+ * Fix for Preview Loader
214
+ * Add loader for diagrams
215
+ * new youtube video
216
+ * For Source Option added the ability to Export data from an External DB and use SQL Query
217
+ * Fixed row headers in Editor Tab
218
+ * Added the ability to build a chart based on data from database tables
219
+ * Added posibility to place reduction like 1-4, A-D in part shortcode
220
+
221
  = 1.8.7 / 24.07.2018 =
222
  * Fix Multisite Installation process
223
  * Fixed the problem: Clicking on the cell raises the table up
src/SupsysticTables/Core/BaseController.php CHANGED
@@ -85,4 +85,5 @@ abstract class SupsysticTables_Core_BaseController extends Rsc_Mvc_Controller
85
  {
86
  return $this->getEnvironment()->getModule('core');
87
  }
 
88
  }
85
  {
86
  return $this->getEnvironment()->getModule('core');
87
  }
88
+
89
  }
src/SupsysticTables/Core/Module.php CHANGED
@@ -237,6 +237,34 @@ class SupsysticTables_Core_Module extends SupsysticTables_Core_BaseModule
237
  ->setCachingAllowed($cachingAllowed)
238
  ->setVersion($pluginVersion)
239
  );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
240
  }
241
 
242
  /**
237
  ->setCachingAllowed($cachingAllowed)
238
  ->setVersion($pluginVersion)
239
  );
240
+
241
+ if ($environment->isAction('index')) {
242
+
243
+ $locale = $environment->getLangCode2Letter();
244
+ $ui->add(
245
+ $ui->createStyle('jqgrid-css')
246
+ ->setHookName($hookName)
247
+ ->setLocalSource('css/libraries/jqGrid/ui.jqgrid.css')
248
+ ->setCachingAllowed($cachingAllowed)
249
+ ->setVersion('4.7.0')
250
+ );
251
+ $ui->add(
252
+ $ui->createScript('jquery-jqGrid')
253
+ ->setHookName($hookName)
254
+ ->setLocalSource('js/libraries/jqGrid/jquery.jqGrid.min.js')
255
+ ->addDependency('jquery')
256
+ ->setCachingAllowed($cachingAllowed)
257
+ ->setVersion($pluginVersion)
258
+ );
259
+ $ui->add(
260
+ $ui->createScript('jquery-jqGrid-locale')
261
+ ->setHookName($hookName)
262
+ ->setLocalSource('js/i18n/grid.locale-'.$locale.'.js')
263
+ ->addDependency('jquery')
264
+ ->setCachingAllowed($cachingAllowed)
265
+ ->setVersion($pluginVersion)
266
+ );
267
+ }
268
  }
269
 
270
  /**
src/SupsysticTables/Core/assets/js/core.js CHANGED
@@ -434,6 +434,7 @@ var g_stbServerSideProcessing = false;
434
 
435
  $table.data('resizeTimer', setTimeout(function() {
436
  $table.removeClass('oneColumn oneColumnWithLabels');
 
437
  var tableWidth = $table.width(),
438
  wrapperWidth = $table.closest('.supsystic-tables-wrap').width();
439
  if (tableWidth > wrapperWidth) {
@@ -826,7 +827,7 @@ var g_stbServerSideProcessing = false;
826
  tBody.width(tBodyTable.width());
827
  $tableWrap.find('.dataTables_scrollHead, .dataTables_scrollFoot, .dataTables_scrollBody').width(tBodyTable.width() + 1);
828
  }
829
- if( tBodyTable.isHorizontallyScrollable ){
830
  tBody.css({'border-bottom' : 'none'});
831
  }else{
832
  tBody.removeStyle('border-bottom');
434
 
435
  $table.data('resizeTimer', setTimeout(function() {
436
  $table.removeClass('oneColumn oneColumnWithLabels');
437
+ $table.css('width', '100%');
438
  var tableWidth = $table.width(),
439
  wrapperWidth = $table.closest('.supsystic-tables-wrap').width();
440
  if (tableWidth > wrapperWidth) {
827
  tBody.width(tBodyTable.width());
828
  $tableWrap.find('.dataTables_scrollHead, .dataTables_scrollFoot, .dataTables_scrollBody').width(tBodyTable.width() + 1);
829
  }
830
+ if(tBody.isHorizontallyScrollable()){
831
  tBody.css({'border-bottom' : 'none'});
832
  }else{
833
  tBody.removeStyle('border-bottom');
src/SupsysticTables/Core/assets/js/create-table.js CHANGED
@@ -18,8 +18,8 @@
18
  },
19
  buttons: {
20
  Create: function (event) {
21
- var $button = $(event.target),
22
- buttonInitHtml = $button.html();
23
 
24
  if ($input.val().length == 0 || $input.val().length > 255) {
25
  $error.find('p').text('Title can\'t be empty or more than 255 characters');
@@ -58,9 +58,6 @@
58
  }).fail(function (message) {
59
  $error.find('p').text(message);
60
  $error.fadeIn();
61
- }).always(function () {
62
- $button.html(buttonInitHtml);
63
- $button.attr('disabled', false);
64
  });
65
  },
66
  Cancel: function () {
@@ -81,6 +78,9 @@
81
  if (window.location.hash === '#add') {
82
  // To prevent error if data not loaded completely
83
  setTimeout(function() {
 
 
 
84
  $dialog.dialog('open');
85
  }, 500);
86
  }
18
  },
19
  buttons: {
20
  Create: function (event) {
21
+ var $button = $(event.target);
22
+ if($button.is('span')) $button = $button.parent();
23
 
24
  if ($input.val().length == 0 || $input.val().length > 255) {
25
  $error.find('p').text('Title can\'t be empty or more than 255 characters');
58
  }).fail(function (message) {
59
  $error.find('p').text(message);
60
  $error.fadeIn();
 
 
 
61
  });
62
  },
63
  Cancel: function () {
78
  if (window.location.hash === '#add') {
79
  // To prevent error if data not loaded completely
80
  setTimeout(function() {
81
+ if(typeof(window.editor) != 'undefined') {
82
+ window.editor.deselectCell();
83
+ }
84
  $dialog.dialog('open');
85
  }, 500);
86
  }
src/SupsysticTables/Settings/Controller.php CHANGED
@@ -18,7 +18,7 @@ class SupsysticTables_Settings_Controller extends SupsysticTables_Core_BaseContr
18
  try {
19
  return $this->response(
20
  $templates['settings.index'],
21
- array('settings' => $settings)
22
  );
23
  } catch (Exception $e) {
24
  return $this->response('error.twig', array('exception' => $e));
18
  try {
19
  return $this->response(
20
  $templates['settings.index'],
21
+ array('settings' => $settings, 'wpRoles' => wp_roles()->role_names)
22
  );
23
  } catch (Exception $e) {
24
  return $this->response('error.twig', array('exception' => $e));
src/SupsysticTables/Settings/views/index.twig CHANGED
@@ -76,19 +76,15 @@
76
  {% if environment.isPro() != false %}
77
  <select multiple="multiple" name="settings[access_roles][]" class="chosen-select" data-placeholder="{{ environment.translate('Select avalilable roles to use tables')}}">
78
  <option value="administrator" disabled selected>Administrator</option>
79
- {% set roles = {
80
- editor:'Editor',
81
- author:'Author',
82
- contributor:'Contributor',
83
- subscriber:'Subscriber'
84
- } %}
85
- {% for role, title in roles %}
86
- <option value="{{ role }}"
87
  {% if role in settings.access_roles %}
88
  selected="selected"
89
  {% endif %}
90
  >{{ title }}
91
- </option>
 
92
  {% endfor %}
93
  </select>
94
  {% endif %}
76
  {% if environment.isPro() != false %}
77
  <select multiple="multiple" name="settings[access_roles][]" class="chosen-select" data-placeholder="{{ environment.translate('Select avalilable roles to use tables')}}">
78
  <option value="administrator" disabled selected>Administrator</option>
79
+ {% for role, title in wpRoles %}
80
+ {% if role != 'administrator' %}
81
+ <option value="{{ role }}"
 
 
 
 
 
82
  {% if role in settings.access_roles %}
83
  selected="selected"
84
  {% endif %}
85
  >{{ title }}
86
+ </option>
87
+ {% endif %}
88
  {% endfor %}
89
  </select>
90
  {% endif %}
src/SupsysticTables/Tables/Controller.php CHANGED
@@ -572,4 +572,68 @@ class SupsysticTables_Tables_Controller extends SupsysticTables_Core_BaseControl
572
  return $this->ajaxError($e->getMessage());
573
  }
574
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
575
  }
572
  return $this->ajaxError($e->getMessage());
573
  }
574
  }
575
+
576
+ public function getListForTblAction( Rsc_Http_Request $request)
577
+ {
578
+ $data = $request->post->get('data');
579
+
580
+ $page = $data['page'];
581
+ $rowsLimit = $data['rows'];
582
+ $orderBy = $data['sidx'];
583
+ $sortOrder = $data['sord'];
584
+ $search = $data['search'];
585
+
586
+ $core = $this->getEnvironment()->getModule('core');
587
+ $model = $core->getModelsFactory()->get('tables');
588
+
589
+ // Get total pages count for current request
590
+ $totalCount = $model->getTablesCount();
591
+ $totalPages = 0;
592
+ if($totalCount > 0) {
593
+ $totalPages = ceil($totalCount / $rowsLimit);
594
+ }
595
+ if($page > $totalPages) {
596
+ $page = $totalPages;
597
+ }
598
+ // Calc limits - to get data only for current set
599
+ $limitStart = $rowsLimit * $page - $rowsLimit; // do not put $limit*($page - 1)
600
+ if($limitStart < 0)
601
+ $limitStart = 0;
602
+
603
+ $data = $model->getListTbl(
604
+ array(
605
+ 'orderBy' => $orderBy,
606
+ 'sortOrder' => $sortOrder,
607
+ 'rowsLimit' => $rowsLimit,
608
+ 'limitStart' => $limitStart,
609
+ 'search' => $search,
610
+ )
611
+ );
612
+
613
+ $data = $this->_prepareListForTbl($data);
614
+
615
+ return $this->ajaxSuccess(array(
616
+ 'page' => $page,
617
+ 'total' => $totalPages,
618
+ 'rows' => $data,
619
+ ));
620
+
621
+ }
622
+
623
+ public function _prepareListForTbl($data){
624
+ $config = $this->getEnvironment()->getConfig();
625
+ $tableShortcode = $config->get('shortcode_name');
626
+
627
+ foreach($data as $key=>$row){
628
+ $id = $row['id'];
629
+ $shortcode = "[".$tableShortcode." id=".$id."]";
630
+ $phpcode = htmlspecialchars("<?php echo supsystic_tables_get(".$id."); ?>");
631
+ $titleUrl = "<a href=".$this->generateUrl('tables', 'view', array( 'id' => $id ) ).">".$row['title']." <i class='fa fa-fw fa-pencil'></i></a>";
632
+ $data[$key]['shortcode'] = $shortcode;
633
+ $data[$key]['phpcode'] = $phpcode;
634
+ $data[$key]['title'] = $titleUrl;
635
+ }
636
+ return $data;
637
+ }
638
+
639
  }
src/SupsysticTables/Tables/Model/Tables.php CHANGED
@@ -40,6 +40,63 @@ class SupsysticTables_Tables_Model_Tables extends SupsysticTables_Core_BaseModel
40
  return $this->db->get_results($query->build());
41
  }
42
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
43
  /**
44
  * Returns an array of the table columns.
45
  * @param int $id Table id
@@ -645,7 +702,7 @@ class SupsysticTables_Tables_Model_Tables extends SupsysticTables_Core_BaseModel
645
  foreach ($rows as $i => $row) {
646
  $values = @unserialize($row->data);
647
  array_splice($values['cells'], $from);
648
- updateRow($row->id, $values);
649
  }
650
  unset($rows);
651
  $offset += $limit;
40
  return $this->db->get_results($query->build());
41
  }
42
 
43
+ public function getListTbl($params)
44
+ {
45
+ $orderBy = isset($params['orderBy']) ? $params['orderBy'] : '';
46
+ $sortOrder = isset($params['sortOrder']) ? $params['sortOrder'] : '';
47
+ $rowsLimit = isset($params['rowsLimit']) ? $params['rowsLimit'] : '';
48
+ $limitStart = isset($params['limitStart']) ? $params['limitStart'] : '';
49
+ $search = isset($params['search']) ? $params['search'] : '';
50
+
51
+ // jqGrid search
52
+ // $isSearch = $request->get_param('_search');
53
+ // if($isSearch) {
54
+ // $searchField = trim($request->get_param('searchField'));
55
+ // $searchString = trim($request->get_param('searchString'));
56
+ // if(!empty($searchField) && !empty($searchString)) {
57
+ // // For some cases - we will need to modify search keys and/or values before put it to the model
58
+ // $model->addWhere(array(
59
+ // $this->_prepareSearchField($searchField) => $this->_prepareSearchString($searchString)
60
+ // ));
61
+ // }
62
+ // }
63
+
64
+
65
+ $query = $this->getQueryBuilder()->select('*')
66
+ ->from($this->db->prefix . 'supsystic_tbl_tables')
67
+ ->orderBy($orderBy)
68
+ ->order($sortOrder)
69
+ ->limit((int)$rowsLimit)
70
+ ->offset((int)$limitStart);
71
+
72
+ // Our custom search
73
+ if($search && !empty($search) && is_array($search)) {
74
+ foreach($search as $k => $v) {
75
+ $v = trim($v);
76
+ if(empty($v)) continue;
77
+ if($k == 'text_like') {
78
+ if(!empty($v)) {
79
+ $query->where( 'title', 'LIKE', '%'.$v.'%' );
80
+
81
+ }
82
+ } else {
83
+ $query->where( 'title', '=', '%'.$v.'%' );
84
+ }
85
+ }
86
+ }
87
+
88
+ return $this->db->get_results($query->build(), ARRAY_A);
89
+ }
90
+
91
+ public function getTablesCount()
92
+ {
93
+ $query = $this->getQueryBuilder()->select('*')
94
+ ->from($this->db->prefix . 'supsystic_tbl_tables');
95
+
96
+ $tables = $this->db->get_results($query->build(), ARRAY_A);
97
+ return count($tables);
98
+ }
99
+
100
  /**
101
  * Returns an array of the table columns.
102
  * @param int $id Table id
702
  foreach ($rows as $i => $row) {
703
  $values = @unserialize($row->data);
704
  array_splice($values['cells'], $from);
705
+ $this->updateRow($row->id, $values);
706
  }
707
  unset($rows);
708
  $offset += $limit;
src/SupsysticTables/Tables/Module.php CHANGED
@@ -53,6 +53,7 @@ class SupsysticTables_Tables_Module extends SupsysticTables_Core_BaseModule
53
  $dispatcher = $this->getEnvironment()->getDispatcher();
54
  $dispatcher->on('after_tables_loaded', array($this, 'onAfterLoaded'));
55
  $this->renderTableHistorySection();
 
56
  }
57
 
58
  public function getDataTablesInPosts() {
@@ -557,9 +558,42 @@ class SupsysticTables_Tables_Module extends SupsysticTables_Core_BaseModule
557
  add_action('wp_footer', array($asset, 'load'));
558
  }
559
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
560
  $this->isTablePart = array(
561
- 'row' => array_key_exists('row', $attributes) ? array_filter(explode(',', $attributes['row'])) : array(),
562
- 'col' => array_key_exists('col', $attributes) ? $this->_lettersToNumbers(array_filter(explode(',', $attributes['col']))) : array(),
563
  );
564
 
565
  return $this->render((int)$attributes['id']);
@@ -677,6 +711,14 @@ class SupsysticTables_Tables_Module extends SupsysticTables_Core_BaseModule
677
  );
678
 
679
  if ($environment->isAction('index')) {
 
 
 
 
 
 
 
 
680
  $ui->add(
681
  $ui->createScript('supsystic-tables-tables-index')
682
  ->setHookName($hookName)
@@ -692,6 +734,34 @@ class SupsysticTables_Tables_Module extends SupsysticTables_Core_BaseModule
692
  ->setCachingAllowed($cachingAllowed)
693
  ->setVersion($version)
694
  );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
695
  }
696
 
697
  if ($environment->isAction('view')) {
53
  $dispatcher = $this->getEnvironment()->getDispatcher();
54
  $dispatcher->on('after_tables_loaded', array($this, 'onAfterLoaded'));
55
  $this->renderTableHistorySection();
56
+
57
  }
58
 
59
  public function getDataTablesInPosts() {
558
  add_action('wp_footer', array($asset, 'load'));
559
  }
560
  }
561
+
562
+
563
+ $rowsResult = array();
564
+ $rows = array_filter(
565
+ explode(',', $attributes['row'])
566
+ );
567
+ foreach ($rows as $row ){
568
+ if (strpos($row, '-') !== false) {
569
+ $minMaxVals = explode('-', $row);
570
+ foreach (range($minMaxVals[0], $minMaxVals[1]) as $item) {
571
+ $rowsResult[] = (string)$item;
572
+ }
573
+ }else{
574
+ $rowsResult[] = (string)$row;
575
+ }
576
+
577
+ }
578
+
579
+ $colsResult = array();
580
+ $cols = array_filter(
581
+ explode(',', $attributes['col'])
582
+ );
583
+ foreach ($cols as $col ){
584
+ if (strpos($col, '-') !== false) {
585
+ $minMaxVals = explode('-', $col);
586
+ foreach (range($minMaxVals[0], $minMaxVals[1]) as $item) {
587
+ $colsResult[] = $this->_lettersToNumbers((string)$item);
588
+ }
589
+ }else{
590
+ $colsResult[] = $this->_lettersToNumbers((string)$col);
591
+ }
592
+ }
593
+
594
  $this->isTablePart = array(
595
+ 'row' => $rowsResult,
596
+ 'col' => $colsResult,
597
  );
598
 
599
  return $this->render((int)$attributes['id']);
711
  );
712
 
713
  if ($environment->isAction('index')) {
714
+ $ui->add(
715
+ $ui->createScript('supsystic-tables-tables-index-list')
716
+ ->setHookName($hookName)
717
+ ->setModuleSource($this, 'js/tables.admin.list.js')
718
+ ->setCachingAllowed($cachingAllowed)
719
+ ->setVersion($version)
720
+ ->addDependency('jquery-ui-dialog')
721
+ );
722
  $ui->add(
723
  $ui->createScript('supsystic-tables-tables-index')
724
  ->setHookName($hookName)
734
  ->setCachingAllowed($cachingAllowed)
735
  ->setVersion($version)
736
  );
737
+ $ui->add(
738
+ $ui->createStyle('jquery-slider')
739
+ ->setHookName($hookName)
740
+ ->setLocalSource( 'css/jquery-slider.css')
741
+ ->setCachingAllowed($cachingAllowed)
742
+ ->setVersion($version)
743
+ );
744
+ $ui->add(
745
+ $ui->createStyle('jquery-ui-min')
746
+ ->setHookName($hookName)
747
+ ->setLocalSource('css/jquery-ui.min.css')
748
+ ->setCachingAllowed($cachingAllowed)
749
+ ->setVersion($version)
750
+ );
751
+ $ui->add(
752
+ $ui->createStyle('jquery-ui-structure')
753
+ ->setHookName($hookName)
754
+ ->setLocalSource('css/jquery-ui.structure.min.css')
755
+ ->setCachingAllowed($cachingAllowed)
756
+ ->setVersion($version)
757
+ );
758
+ $ui->add(
759
+ $ui->createStyle('jquery-ui-theme')
760
+ ->setHookName($hookName)
761
+ ->setLocalSource('css/jquery-ui.theme.min.css')
762
+ ->setCachingAllowed($cachingAllowed)
763
+ ->setVersion($version)
764
+ );
765
  }
766
 
767
  if ($environment->isAction('view')) {
src/SupsysticTables/Tables/assets/css/loaders.css CHANGED
@@ -163,7 +163,7 @@
163
 
164
 
165
  /* Old Default Table Loader */
166
- .supsystic-table-loader {
167
  margin: 0 auto;
168
  }
169
  .spinner {
163
 
164
 
165
  /* Old Default Table Loader */
166
+ .supsystic-table-loader, .supsystic-diagram-loader {
167
  margin: 0 auto;
168
  }
169
  .spinner {
src/SupsysticTables/Tables/assets/css/tables.shortcode.css CHANGED
@@ -233,7 +233,9 @@ table.oneColumnWithLabels td:after {
233
  .supsystic-tables-wrap table {
234
  margin-left: 0 !important;
235
  }
236
-
 
 
237
  table.dataTable tfoot input {
238
  width: 100%;
239
  padding: 3px;
233
  .supsystic-tables-wrap table {
234
  margin-left: 0 !important;
235
  }
236
+ .supsystic-tables-wrap .dataTables_scroll {
237
+ padding-top: 0 !important;
238
+ }
239
  table.dataTable tfoot input {
240
  width: 100%;
241
  padding: 3px;
src/SupsysticTables/Tables/assets/css/tables.view.css CHANGED
@@ -422,3 +422,9 @@
422
  width: 100%;
423
  }
424
  }
 
 
 
 
 
 
422
  width: 100%;
423
  }
424
  }
425
+ .video-container {
426
+ position:relative;
427
+ padding-bottom:56.25%;
428
+ height:0;
429
+ overflow:hidden;
430
+ }
src/SupsysticTables/Tables/assets/js/editor/tables.editor.js CHANGED
@@ -319,6 +319,21 @@ var g_stbRowsPerPage = 1;
319
  }
320
  updateUndoRedoBtns();
321
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
322
  editor.addHook('afterRemoveRow', function (from, amount) {
323
  generateHeightData();
324
  editor.allHeights.splice(from, amount);
@@ -335,6 +350,7 @@ var g_stbRowsPerPage = 1;
335
  editor.bufferData.splice(rowForBuffer, amount);
336
  editor.bufferHeights.splice(rowForBuffer, amount);
337
  editor.bufferMeta.splice(rowForBuffer * countCols, amount * countCols);
 
338
 
339
  for (var i = 0; i < merge.length; i++) {
340
  var row = merge[i].row;
@@ -350,18 +366,6 @@ var g_stbRowsPerPage = 1;
350
  }
351
  }
352
  editor.bufferMerge = mergeNew;
353
- setTimeout(function() {
354
- if (amount > 1) {
355
- var merge = editor.mergeCells.mergedCellInfoCollection;
356
- for (var i = 0; i < merge.length; i++) {
357
- if (merge[i].row >= from) {
358
- merge[i].row -= (amount - 1);
359
- }
360
- }
361
- }
362
- editor.generatePagingLinks();
363
- editor.setPageData();
364
- }, 10);
365
  } else {
366
  var countRows = editor.countRows(),
367
  plugin = editor.getPlugin('ManualRowResize');
@@ -373,12 +377,32 @@ var g_stbRowsPerPage = 1;
373
  plugin.setManualSize(i, editor.allHeights[i]);
374
  }
375
  }
376
- setTimeout(function() {
377
- toolbar.renderTooltips(from, 0);
378
- }, 10);
379
  }
 
 
 
 
 
 
 
 
380
  updateUndoRedoBtns();
381
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
382
  editor.addHook('afterRemoveCol', function(from, amount) {
383
  generateWidthData();
384
  editor.allWidths.splice(from, amount);
@@ -716,7 +740,9 @@ var g_stbRowsPerPage = 1;
716
  }
717
  }
718
 
719
- var mergeNew = [];
 
 
720
  for (var i = 0; i < merge.length; i++) {
721
  mergeNew.push({
722
  col: merge[i].col,
@@ -727,7 +753,7 @@ var g_stbRowsPerPage = 1;
727
  }
728
  for (var i = 0; i < this.bufferMerge.length; i++) {
729
  row = this.bufferMerge[i].row;
730
- if (row < start || row > stop) {
731
  mergeNew.push(this.bufferMerge[i]);
732
  }
733
  }
@@ -750,6 +776,7 @@ var g_stbRowsPerPage = 1;
750
  editor.getSourceDataPagination = (function () {
751
  return function (fromX, fromY, toX, toY) {
752
  this.copyInBuffer();
 
753
  var data = this.bufferData,
754
  rangeData = [],
755
  buffer;
@@ -776,7 +803,9 @@ var g_stbRowsPerPage = 1;
776
  })();
777
 
778
  Handsontable.dom.addEvent(window, 'hashchange', function (event) {
779
- editor.setPageData();
 
 
780
  });
781
  });
782
  }(window.jQuery, window.supsystic.Tables));
319
  }
320
  updateUndoRedoBtns();
321
  });
322
+ editor.addHook('beforeRemoveRow', function (from, amount) {
323
+ var merge = editor.mergeCells.mergedCellInfoCollection,
324
+ to = from + amount - 1,
325
+ cntMerge = merge.length;
326
+ for (var i = cntMerge - 1; i >= 0; i--) {
327
+ var row = merge[i].row;
328
+ if (row >= from) {
329
+ if (row <= to) {
330
+ merge.splice(i, 1);
331
+ } else {
332
+ merge[i].row -= (amount - 1);
333
+ }
334
+ }
335
+ }
336
+ });
337
  editor.addHook('afterRemoveRow', function (from, amount) {
338
  generateHeightData();
339
  editor.allHeights.splice(from, amount);
350
  editor.bufferData.splice(rowForBuffer, amount);
351
  editor.bufferHeights.splice(rowForBuffer, amount);
352
  editor.bufferMeta.splice(rowForBuffer * countCols, amount * countCols);
353
+ editor.pageStop -= amount;
354
 
355
  for (var i = 0; i < merge.length; i++) {
356
  var row = merge[i].row;
366
  }
367
  }
368
  editor.bufferMerge = mergeNew;
 
 
 
 
 
 
 
 
 
 
 
 
369
  } else {
370
  var countRows = editor.countRows(),
371
  plugin = editor.getPlugin('ManualRowResize');
377
  plugin.setManualSize(i, editor.allHeights[i]);
378
  }
379
  }
 
 
 
380
  }
381
+ setTimeout(function() {
382
+ if (g_stbPagination) {
383
+ editor.generatePagingLinks();
384
+ editor.setPageData();
385
+ } else {
386
+ toolbar.renderTooltips(from, 0);
387
+ }
388
+ }, 10);
389
  updateUndoRedoBtns();
390
  });
391
+ editor.addHook('beforeRemoveCol', function (from, amount) {
392
+ var merge = editor.mergeCells.mergedCellInfoCollection,
393
+ to = from + amount - 1,
394
+ cntMerge = merge.length;
395
+ for (var i = cntMerge - 1; i >= 0; i--) {
396
+ var col = merge[i].col;
397
+ if (col >= from) {
398
+ if (col <= to) {
399
+ merge.splice(i, 1);
400
+ } else {
401
+ merge[i].col -= (amount - 1);
402
+ }
403
+ }
404
+ }
405
+ });
406
  editor.addHook('afterRemoveCol', function(from, amount) {
407
  generateWidthData();
408
  editor.allWidths.splice(from, amount);
740
  }
741
  }
742
 
743
+ var mergeNew = [],
744
+ realCountRows = this.bufferData.length;
745
+
746
  for (var i = 0; i < merge.length; i++) {
747
  mergeNew.push({
748
  col: merge[i].col,
753
  }
754
  for (var i = 0; i < this.bufferMerge.length; i++) {
755
  row = this.bufferMerge[i].row;
756
+ if (row < realCountRows && (row < start || row > stop)) {
757
  mergeNew.push(this.bufferMerge[i]);
758
  }
759
  }
776
  editor.getSourceDataPagination = (function () {
777
  return function (fromX, fromY, toX, toY) {
778
  this.copyInBuffer();
779
+ if (typeof(fromX) == 'undefined') return this.bufferData;
780
  var data = this.bufferData,
781
  rangeData = [],
782
  buffer;
803
  })();
804
 
805
  Handsontable.dom.addEvent(window, 'hashchange', function (event) {
806
+ if (g_stbPagination) {
807
+ editor.setPageData();
808
+ }
809
  });
810
  });
811
  }(window.jQuery, window.supsystic.Tables));
src/SupsysticTables/Tables/assets/js/editor/tables.editor.toolbar.js CHANGED
@@ -257,6 +257,9 @@ var g_stbCellBgColorTimeoutSet = false,
257
 
258
  if(attachment && attachment.url) {
259
  editor.setDataAtCell(highlighted.row, highlighted.col, self.getHtmlForAttachment(attachment));
 
 
 
260
  }
261
  });
262
  }
@@ -583,10 +586,10 @@ var g_stbCellBgColorTimeoutSet = false,
583
  content = '<img src="' + attachment.url + '" />';
584
  break;
585
  case 'video':
586
- content = '<video controls>';
587
  content += '<source src="' + attachment.url + '" ' +
588
  (typeof attachment.mime != 'undefined' ? 'type="' + attachment.mime + '"' : '') + '>';
589
- content += '</video>';
590
  break;
591
  case 'audio':
592
  content = '<audio controls>';
257
 
258
  if(attachment && attachment.url) {
259
  editor.setDataAtCell(highlighted.row, highlighted.col, self.getHtmlForAttachment(attachment));
260
+ setTimeout(function(){
261
+ editor.render();
262
+ }, 200);
263
  }
264
  });
265
  }
586
  content = '<img src="' + attachment.url + '" />';
587
  break;
588
  case 'video':
589
+ content = '<div class="video-container"><video controls>';
590
  content += '<source src="' + attachment.url + '" ' +
591
  (typeof attachment.mime != 'undefined' ? 'type="' + attachment.mime + '"' : '') + '>';
592
+ content += '</video></div>';
593
  break;
594
  case 'audio':
595
  content = '<audio controls>';
src/SupsysticTables/Tables/assets/js/tables.admin.list.js ADDED
@@ -0,0 +1,227 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery(document).ready(function(){
2
+ // Fallback for case if library was not loaded
3
+ if(!jQuery.fn.jqGrid) {
4
+ return;
5
+ }
6
+ var tblId = 'ddtTableTbl';
7
+
8
+ jQuery('#'+ tblId).jqGrid({
9
+ // url: dttTblDataUrl
10
+ // ,
11
+ datatype: function(postdata){
12
+ window.supsystic.Tables.request({
13
+ module: 'tables',
14
+ action: 'getListForTbl'
15
+ }, {
16
+ data:postdata,
17
+ }).done(function (res) {
18
+ var grid = jQuery('#'+ tblId)[0];
19
+ grid.addJSONData(res);
20
+ }).fail(function (error) {
21
+ console.log(error);
22
+ });
23
+ }
24
+ , mtype: 'GET'
25
+ , autowidth: true
26
+ , shrinkToFit: true
27
+ , colNames:['ID', 'Title', 'Shortcode', 'Phpcode']
28
+ , colModel:[
29
+ {name: 'id', index: 'id', searchoptions: {sopt: ['eq']}, width: '50', align: 'center'}
30
+ , {name: 'title', index: 'title', searchoptions: {sopt: ['eq']}, align: 'center'}
31
+ , {name: 'shortcode', index: 'shortcode', searchoptions: {sopt: ['eq']}, align: 'center'}
32
+ , {name: 'phpcode', index: 'phpcode', searchoptions: {sopt: ['eq']}, align: 'center'}
33
+ ]
34
+ , postData: {
35
+ search: {
36
+ text_like: jQuery('#'+ tblId+ 'SearchTxt').val()
37
+ }
38
+ }
39
+ , rowNum:10
40
+ , rowList:[10, 20, 30, 1000]
41
+ , pager: '#'+ tblId+ 'Nav'
42
+ , sortname: 'id'
43
+ , viewrecords: true
44
+ , sortorder: 'desc'
45
+ , jsonReader: { repeatitems : false, id: '0' }
46
+ , height: '100%'
47
+ , emptyrecords: 'You have no Tables for now.'
48
+ , multiselect: true
49
+ , onSelectRow: function(rowid, e) {
50
+ var tblId = jQuery(this).attr('id')
51
+ , selectedRowIds = jQuery('#'+ tblId).jqGrid ('getGridParam', 'selarrrow')
52
+ , totalRows = jQuery('#'+ tblId).getGridParam('reccount')
53
+ , totalRowsSelected = selectedRowIds.length;
54
+ if(totalRowsSelected) {
55
+ jQuery('#ddtTableRemoveGroupBtn').removeAttr('disabled');
56
+ jQuery('#export-group').removeAttr('disabled');
57
+
58
+ if(totalRowsSelected == totalRows) {
59
+ jQuery('#cb_'+ tblId).prop('indeterminate', false);
60
+ jQuery('#cb_'+ tblId).attr('checked', 'checked');
61
+ } else {
62
+ jQuery('#cb_'+ tblId).prop('indeterminate', true);
63
+ }
64
+ } else {
65
+ jQuery('#export-group').attr('disabled', 'disabled');
66
+ jQuery('#ddtTableRemoveGroupBtn').attr('disabled', 'disabled');
67
+ jQuery('#cb_'+ tblId).prop('indeterminate', false);
68
+ jQuery('#cb_'+ tblId).removeAttr('checked');
69
+ }
70
+ ddtCheckUpdate(jQuery(this).find('tr:eq('+rowid+')').find('input[type=checkbox].cbox'));
71
+ ddtCheckUpdate('#cb_'+ tblId);
72
+ }
73
+ , gridComplete: function(a, b, c) {
74
+ var tblId = jQuery(this).attr('id');
75
+ jQuery('#ddtTableRemoveGroupBtn').attr('disabled', 'disabled');
76
+ jQuery('#cb_'+ tblId).prop('indeterminate', false);
77
+ jQuery('#cb_'+ tblId).removeAttr('checked');
78
+ // Custom checkbox manipulation
79
+ ddtInitCustomCheckRadio('#'+ jQuery(this).attr('id') );
80
+ ddtCheckUpdate('#cb_'+ jQuery(this).attr('id'));
81
+ }
82
+ , loadComplete: function() {
83
+ var tblId = jQuery(this).attr('id');
84
+ if (this.p.reccount === 0) {
85
+ jQuery(this).hide();
86
+ jQuery('#'+ tblId+ 'EmptyMsg').show();
87
+ } else {
88
+ jQuery(this).show();
89
+ jQuery('#'+ tblId+ 'EmptyMsg').hide();
90
+ }
91
+ }
92
+ });
93
+ jQuery('#'+ tblId).setColProp('phpcode', {sortable: false});
94
+ jQuery('#'+ tblId).setColProp('shortcode', {sortable: false});
95
+ jQuery('#'+ tblId+ 'NavShell').append( jQuery('#'+ tblId+ 'Nav') );
96
+ jQuery('#'+ tblId+ 'Nav').find('.ui-pg-selbox').insertAfter( jQuery('#'+ tblId+ 'Nav').find('.ui-paging-info') );
97
+ jQuery('#'+ tblId+ 'Nav').find('.ui-pg-table td:first').remove();
98
+ // Make navigation tabs to be with our additional buttons - in one row
99
+ jQuery('#'+ tblId+ 'Nav_center').prepend( jQuery('#'+ tblId+ 'NavBtnsShell') ).css({
100
+ 'width': '80%'
101
+ , 'white-space': 'normal'
102
+ , 'padding-top': '8px'
103
+ });
104
+ jQuery('#'+ tblId+ 'SearchTxt').keyup(function(){
105
+ var searchVal = jQuery.trim( jQuery(this).val() );
106
+ if( true /*searchVal && searchVal != ''*/ ) {
107
+ ddtGridDoListSearch({
108
+ text_like: searchVal
109
+ }, tblId);
110
+ }
111
+ });
112
+
113
+ jQuery('#'+ tblId+ 'EmptyMsg').insertAfter(jQuery('#'+ tblId+ '').parent());
114
+ jQuery('#'+ tblId+ '').jqGrid('navGrid', '#'+ tblId+ 'Nav', {edit: false, add: false, del: false});
115
+ jQuery('#cb_'+ tblId+ '').change(function(){
116
+ jQuery(this).attr('checked')
117
+ ? jQuery('#ddtTableRemoveGroupBtn').removeAttr('disabled')
118
+ : jQuery('#ddtTableRemoveGroupBtn').attr('disabled', 'disabled');
119
+
120
+ jQuery(this).attr('checked')
121
+ ? jQuery('#export-group').removeAttr('disabled')
122
+ : jQuery('#export-group').attr('disabled', 'disabled');
123
+ });
124
+
125
+ jQuery('#ddtTableRemoveGroupBtn').click(function(){
126
+ var selectedRowIds = jQuery('#ddtTableTbl').jqGrid ('getGridParam', 'selarrrow')
127
+ , listIds = [];
128
+ for(var i in selectedRowIds) {
129
+ var rowData = jQuery('#ddtTableTbl').jqGrid('getRowData', selectedRowIds[ i ]);
130
+ listIds.push( rowData.id );
131
+ }
132
+ var popupLabel = '';
133
+ if(listIds.length == 1) { // In table label cell there can be some additional links
134
+ var labelCellData = ddtGetGridColDataById(listIds[0], 'title', 'ddtTableTbl');
135
+ popupLabel = jQuery(labelCellData).text();
136
+ }
137
+ var confirmMsg = listIds.length > 1
138
+ ? 'Are you sur want to remove '+ listIds.length+ ' Tables?'
139
+ : 'Are you sure want to remove "'+ popupLabel+ '" Table?'
140
+ if(confirm(confirmMsg)) {
141
+ jQuery.post(ajaxurl,
142
+ {
143
+ action: 'supsystic-tables',
144
+ route: {
145
+ module: 'tables',
146
+ action: 'remove'
147
+ },
148
+ id: listIds
149
+ })
150
+ .success(function (res) {
151
+ if(!res.error) {
152
+ jQuery('#ddtTableTbl').trigger( 'reloadGrid' );
153
+ }
154
+ });
155
+
156
+ }
157
+ return false;
158
+ });
159
+ ddtInitCustomCheckRadio('#'+ tblId+ '_cb');
160
+
161
+ function ddtInitCustomCheckRadio(selector) {
162
+ if(!jQuery.fn.iCheck) return;
163
+ if(!selector)
164
+ selector = document;
165
+ jQuery(selector).find('input').iCheck('destroy').iCheck({
166
+ checkboxClass: 'icheckbox_minimal'
167
+ , radioClass: 'iradio_minimal'
168
+ }).on('ifChanged', function(e){
169
+ // for checkboxHiddenVal type, see class htmlddt
170
+ jQuery(this).trigger('change');
171
+ if(jQuery(this).hasClass('cbox')) {
172
+ var parentRow = jQuery(this).parents('.jqgrow:first');
173
+ if(parentRow && parentRow.size()) {
174
+ jQuery(this).parents('td:first').trigger('click');
175
+ } else {
176
+ var checkId = jQuery(this).attr('id');
177
+ if(checkId && checkId != '' && strpos(checkId, 'cb_') === 0) {
178
+ var parentTblId = str_replace(checkId, 'cb_', '');
179
+ if(parentTblId && parentTblId != '' && jQuery('#'+ parentTblId).size()) {
180
+ jQuery('#'+ parentTblId).find('input[type=checkbox]').iCheck('update');
181
+ }
182
+ }
183
+ }
184
+ }
185
+ }).on('ifClicked', function(e){
186
+ jQuery(this).trigger('click');
187
+ });
188
+ }
189
+ function ddtCheckUpdate(checkbox) {
190
+ if(!jQuery.fn.iCheck) return;
191
+ jQuery(checkbox).iCheck('update');
192
+ }
193
+ function strpos( haystack, needle, offset){
194
+ var i = haystack.indexOf( needle, offset ); // returns -1
195
+ return i >= 0 ? i : false;
196
+ }
197
+ function str_replace(haystack, needle, replacement) {
198
+ var temp = haystack.split(needle);
199
+ return temp.join(replacement);
200
+ }
201
+ function ddtGridDoListSearch(param, gridSelectorId) {
202
+ ddtGridSetListSearch(param, gridSelectorId);
203
+ jQuery('#'+ gridSelectorId).trigger( 'reloadGrid' );
204
+ }
205
+ function ddtGridSetListSearch(param, gridSelectorId) {
206
+ jQuery('#'+ gridSelectorId).setGridParam({
207
+ postData: {
208
+ search: param
209
+ }
210
+ });
211
+ }
212
+ function ddtGetGridColDataById(id, column, gridSelectorId) {
213
+ var rowId = getGridRowId(id, gridSelectorId);
214
+ if(rowId) {
215
+ return jQuery('#'+ gridSelectorId).jqGrid ('getCell', rowId, column);
216
+ }
217
+ return false;
218
+ }
219
+ function getGridRowId(id, gridSelectorId) {
220
+ var rowId = parseInt(jQuery('#'+ gridSelectorId).find('[aria-describedby='+ gridSelectorId+ '_id][title='+ id+ ']').parent('tr:first').index());
221
+ if(!rowId) {
222
+ console.log('CAN NOT FIND ITEM WITH ID '+ id);
223
+ return false;
224
+ }
225
+ return rowId;
226
+ }
227
+ });
src/SupsysticTables/Tables/assets/js/tables.model.js CHANGED
@@ -354,6 +354,12 @@ var g_stbPreviewTimeoutSet = false;
354
  comment: cell.comment
355
  });
356
  }
 
 
 
 
 
 
357
  cells.push(cell.data);
358
  });
359
  data.push(cells);
@@ -452,13 +458,13 @@ var g_stbPreviewTimeoutSet = false;
452
  formData.find('input[name="elements[descriptionText]"]').val( formData.find('#descriptionText').val() );
453
  formData.find('input[name="elements[signatureText]"]').val( formData.find('#signatureText').val() );
454
  formData.find('input[name="features[after_table_loaded_script]"]').val(this._b64EncodeUnicode(formData.find('#after-table-loaded-script-text').val()));
 
455
 
456
  if(preview) {
457
  var tableInstance = app.getTableInstanceById(id);
458
 
459
  if(tableInstance) {
460
  tableInstance.api().destroy();
461
- $(preview).empty();
462
  }
463
  }
464
 
@@ -661,6 +667,9 @@ var g_stbPreviewTimeoutSet = false;
661
  app.initializeTable(table, app.showTable, function(table) {
662
  self._afterTablePreview(table);
663
  g_stbDoPreview = false;
 
 
 
664
  });
665
  });
666
  }
354
  comment: cell.comment
355
  });
356
  }
357
+ try {
358
+ if(cell.data[0] !== '=' && $(cell.data).is('video')) {
359
+ cell.data = '<div class="video-container">' + cell.data + '</div>';
360
+ }
361
+ } catch(e) {}
362
+
363
  cells.push(cell.data);
364
  });
365
  data.push(cells);
458
  formData.find('input[name="elements[descriptionText]"]').val( formData.find('#descriptionText').val() );
459
  formData.find('input[name="elements[signatureText]"]').val( formData.find('#signatureText').val() );
460
  formData.find('input[name="features[after_table_loaded_script]"]').val(this._b64EncodeUnicode(formData.find('#after-table-loaded-script-text').val()));
461
+ formData.find('input[name="source[dbSQL]"]').val( formData.find('#source-db-sql').val() );
462
 
463
  if(preview) {
464
  var tableInstance = app.getTableInstanceById(id);
465
 
466
  if(tableInstance) {
467
  tableInstance.api().destroy();
 
468
  }
469
  }
470
 
667
  app.initializeTable(table, app.showTable, function(table) {
668
  self._afterTablePreview(table);
669
  g_stbDoPreview = false;
670
+ if(app.initExportTable) {
671
+ app.initExportTable();
672
+ }
673
  });
674
  });
675
  }
src/SupsysticTables/Tables/views/index.twig CHANGED
@@ -3,92 +3,45 @@
3
  {% block content %}
4
  <div class="supsystic-item supsystic-item-autoheight">
5
  <div class="container-fluid">
6
- <div class="row">
7
- <div class="col-xs-12">
8
- {% set columns = [
9
- 'ID',
10
- environment.translate('Title'),
11
- environment.translate('Created'),
12
- environment.translate('Shortcode'),
13
- environment.translate('PHP'),
14
- environment.translate('Actions')]
15
- %}
16
- <table id="tables" class="wp-list-table widefat" style="min-width: 100%;">
17
- <thead>
18
- <tr>
19
- <th scope="col">
20
- <input type="checkbox" id="check_all" name="check_all">
21
- </th>
22
- {% for column in columns %}
23
- <th scope="col">{{ column }}</th>
24
- {% endfor %}
25
- </tr>
26
- </thead>
27
- <tbody>
28
- {% for table in tables %}
29
- <tr id="table-{{ table.id }}" data-table-id="{{ table.id }}">
30
- <td>
31
- <input type="checkbox" class="tableCheckbox" id="check_{{ table.id }}" data-table-id="{{ table.id }}" name="check_{{ table.id }}">
32
- </td>
33
- <td>
34
- {{ table.id }}
35
- </td>
36
- <td>
37
- <a href="{{ environment.generateUrl('tables', 'view', { 'id': table.id }) }}" data-toggle="tooltip" title="{{ environment.translate('Edit table "%s"') | format(table.title) }}">
38
- {{ table.title }}
39
- </a>
40
- <i class="fa fa-fw fa-pencil"></i>
41
- </td>
42
- <td>
43
- {{ table.created_at | date('F jS \\@ H:i') }}
44
- </td>
45
- <td>
46
- <input type="text" class="shortcode" readonly value="[{{ environment.config.get('shortcode_name') }} id='{{ table.id }}']">
47
- </td>
48
- <td>
49
- <input type="text" class="shortcode" readonly value="{{ "<?php echo supsystic_tables_get(%s); ?>" | format(table.id) }}">
50
- </td>
51
- <td>
52
- <a class="button button-small"
53
- href="{{ environment.generateUrl('tables', 'view', { 'id': table.id }) }}">
54
- <i class="fa fa-fw fa-pencil"></i>
55
- <!-- /.fa fa-fw fa-pencil -->
56
- </a>
57
- <!-- /.button -->
58
- <a class="button button-small delete-table"
59
- href="#">
60
- <i class="fa fa-fw fa-trash-o"></i>
61
- <!-- /.fa fa-fw fa-pencil -->
62
- </a>
63
- </td>
64
- </tr>
65
- {% endfor %}
66
- </tbody>
67
- </table>
68
- <!-- /.wp-list-table widefat -->
69
  </div>
70
- <!-- /.col-xs-12 -->
71
- <div class="col-xs-12">
72
- <button class="button group_button" id="delete-group" disabled>
73
- <i class="fa fa-fw fa-trash-o"></i>{{ environment.translate('Delete selected') }}
74
- </button>
75
- <button class="button group_button {% if environment.isPro() == false %}pro-notify{% endif %}"
76
- data-dialog="#import_exportProFeatureDialog"
77
- data-dtitle="{{ environment.translate('Export') }}"
78
- data-dwidth="480"
79
- id="export-group" disabled>
80
- <i class="fa fa-fw fa-upload"></i><span>{{ environment.translate('Export selected') }}</span>
81
- </button>
82
- <button class="button group_button {% if environment.isPro() == false %}pro-notify{% endif %}"
83
- data-dialog="#import_exportProFeatureDialog"
84
- data-dtitle="{{ environment.translate('Import') }}"
85
- data-dwidth="480"
86
- id="import-group">
87
- <i class="fa fa-fw fa-download"></i><span>{{ environment.translate('Import') }}</span>
88
- </button>
89
- </div>
90
- </div>
91
- <!-- /.row -->
92
  </div>
93
  <!-- /.container-fluid -->
94
 
3
  {% block content %}
4
  <div class="supsystic-item supsystic-item-autoheight">
5
  <div class="container-fluid">
6
+ <section>
7
+ <div class="supsystic-item supsystic-panel">
8
+ <div id="containerWrapper">
9
+ <ul id="ddtTableTblNavBtnsShell" class="supsystic-bar-controls">
10
+ <li title="Delete selected">
11
+ <button class="button" id="ddtTableRemoveGroupBtn" disabled data-toolbar-button>
12
+ <i class="fa fa-fw fa-trash-o"></i>
13
+ Delete selected
14
+ </button>
15
+ </li>
16
+ <li title="Export selected">
17
+ <button class="button" id="export-group" disabled data-toolbar-button data-dialog="#import_exportProFeatureDialog">
18
+ <i class="fa fa-fw fa-upload"></i>
19
+ Export selected
20
+ </button>
21
+ </li>
22
+ <li title="Import">
23
+ <button class="button" id="import-group" data-toolbar-button data-dialog="#import_exportProFeatureDialog">
24
+ <i class="fa fa-fw fa-download"></i>
25
+ Import selected
26
+ </button>
27
+ </li>
28
+ <li title="Search">
29
+ <input id="ddtTableTblSearchTxt" type="text" name="tbl_search" placeholder="Search">
30
+ </li>
31
+ </ul>
32
+ <div id="ddtTableTblNavShell" class="supsystic-tbl-pagination-shell"></div>
33
+ <div style="clear: both;"></div>
34
+ <hr />
35
+ <table id="ddtTableTbl"></table>
36
+ <div id="ddtTableTblNav"></div>
37
+ <div id="ddtTableTblEmptyMsg" style="display: none;">
38
+ {#<h3><?php printf(__('You have no Filters for now. <a href="%s" style="font-style: italic;">Create</a> your Filter!', ddt_LANG_CODE), $this->addNewLink)?></h3>#}
39
+ </div>
40
+ </div>
41
+ <div style="clear: both;"></div>
42
+ <div id="prewiew" style="margin-top: 30px"></div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
43
  </div>
44
+ </section>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
45
  </div>
46
  <!-- /.container-fluid -->
47
 
src/SupsysticTables/Tables/views/view.twig CHANGED
@@ -1436,26 +1436,26 @@
1436
  </div>
1437
  </section>
1438
  <section class="row row-settings-tab" id="row-tab-settings-source">
 
1439
  <div class="col-md-6 col-sm-6 col-xs-12">
1440
  <div class="title-place">
1441
  <h3>{{ environment.translate('Database') }}</h3>
1442
  </div>
1443
- {% if environment.isPro() == false %}
1444
- <div class="setting-wrapper row">
1445
- <div class="setting-item col-md-6 col-sm-6 col-xs-12">
1446
- <label for="table-source-database-unavailable">
1447
- {{ environment.translate('Data from Database') }}
1448
- {{ tooltip.icon('You can retrieve data for table from the database.', 'top', true) }}
1449
- </label>
1450
- <a target="_blank" class="supsystic-pro-feature" href="{{ build_pro_url({ 'utm_medium': 'table-source-database' }) }}">{{ environment.translate('PRO option') }}</a>
1451
- </div>
1452
- <div class="setting-item col-md-6 col-sm-6 col-xs-12">
1453
- <input type="checkbox" disabled="disabled" name="source[database]" id="table-source-database-unavailable" />
1454
- </div>
1455
  </div>
1456
- {% endif %}
1457
- {{ environment.getDispatcher().dispatch('tables-view-source', [table]) }}
 
 
1458
  </div>
 
 
1459
  </section>
1460
  </section>
1461
  </form>
@@ -1774,14 +1774,16 @@
1774
  </div>
1775
 
1776
  <div class="row row-tab" id="row-tab-css">
 
 
1777
  {% set defaultCss %}/* Here you can add custom CSS for the current table */
1778
  /* Lean more about CSS: https://en.wikipedia.org/wiki/Cascading_Style_Sheets */
1779
  /*
1780
- To prevent the use of styles to other tables use "#supsystic-table-5" as a base selector
1781
  for example:
1782
- #supsystic-table-5 { ... }
1783
- #supsystic-table-5 tbody { ... }
1784
- #supsystic-table-5 tbody tr { ... }
1785
  */
1786
  {% endset %}
1787
  <div id="css-editor">{% if table.meta.css | length > 0 %}{{ table.meta.css }}{% else %}{{ defaultCss }}{% endif %}</div>
1436
  </div>
1437
  </section>
1438
  <section class="row row-settings-tab" id="row-tab-settings-source">
1439
+ {% if environment.isPro() == false %}
1440
  <div class="col-md-6 col-sm-6 col-xs-12">
1441
  <div class="title-place">
1442
  <h3>{{ environment.translate('Database') }}</h3>
1443
  </div>
1444
+ <div class="setting-wrapper row">
1445
+ <div class="setting-item col-md-6 col-sm-6 col-xs-12">
1446
+ <label for="table-source-database-unavailable">
1447
+ {{ environment.translate('Data from Database') }}
1448
+ {{ tooltip.icon('You can retrieve data for table from the database.', 'top', true) }}
1449
+ </label>
1450
+ <a target="_blank" class="supsystic-pro-feature" href="{{ build_pro_url({ 'utm_medium': 'table-source-database' }) }}">{{ environment.translate('PRO option') }}</a>
 
 
 
 
 
1451
  </div>
1452
+ <div class="setting-item col-md-6 col-sm-6 col-xs-12">
1453
+ <input type="checkbox" disabled="disabled" name="source[database]" id="table-source-database-unavailable" />
1454
+ </div>
1455
+ </div>
1456
  </div>
1457
+ {% endif %}
1458
+ {{ environment.getDispatcher().dispatch('tables-view-source', [table]) }}
1459
  </section>
1460
  </section>
1461
  </form>
1774
  </div>
1775
 
1776
  <div class="row row-tab" id="row-tab-css">
1777
+
1778
+
1779
  {% set defaultCss %}/* Here you can add custom CSS for the current table */
1780
  /* Lean more about CSS: https://en.wikipedia.org/wiki/Cascading_Style_Sheets */
1781
  /*
1782
+ To prevent the use of styles to other tables use "#supsystic-table-{{ table.id }}" as a base selector
1783
  for example:
1784
+ #supsystic-table-{{ table.id }} { ... }
1785
+ #supsystic-table-{{ table.id }} tbody { ... }
1786
+ #supsystic-table-{{ table.id }} tbody tr { ... }
1787
  */
1788
  {% endset %}
1789
  <div id="css-editor">{% if table.meta.css | length > 0 %}{{ table.meta.css }}{% else %}{{ defaultCss }}{% endif %}</div>