diff --git a/couch/addons/repeatable/repeatable.php b/couch/addons/repeatable/repeatable.php
index 36991c8e..d268a6d9 100644
--- a/couch/addons/repeatable/repeatable.php
+++ b/couch/addons/repeatable/repeatable.php
@@ -796,7 +796,7 @@ static function _render_repeatable_assets(){
?>
if ( !window.COUCH ) var COUCH = {};
$(function(){
- $('table.rr tbody').sortable({
+ $('table.rr > tbody').sortable({
axis: "y",
handle: ".dg-arrange-table-rows-drag-icon",
helper: function (e, ui) { // https://paulund.co.uk/fixed-width-sortable-tables
diff --git a/couch/addons/repeatable/tablegear/tablegear.js b/couch/addons/repeatable/tablegear/tablegear.js
index 04f0959c..92063378 100644
--- a/couch/addons/repeatable/tablegear/tablegear.js
+++ b/couch/addons/repeatable/tablegear/tablegear.js
@@ -64,11 +64,11 @@
headers = $('thead th', table)
- tbody = requireElement('tbody', table, '
is required inside ');
+ tbody = requireElement('> tbody', table, ' is required inside ');
tbody.bind( '_reorder', _reordered );
nextid = 0;
- $('tbody tr', table).each(function(rowIndex){
+ table.find("> tbody > tr").each(function(rowIndex){
var el = $(this);
if(el.hasClass('noDataRow')) return;
initializeRow(el, rowIndex);
@@ -119,7 +119,7 @@
function update(){
rows = [];
- $('tbody tr', table).each(function(rowIndex){
+ table.find("> tbody > tr").each(function(rowIndex){
var el = $(this);
rows.push(el);
});
diff --git a/couch/header.php b/couch/header.php
index e55a47ef..6b436bab 100644
--- a/couch/header.php
+++ b/couch/header.php
@@ -50,7 +50,7 @@
if( !defined('K_COUCH_DIR') ) die(); // cannot be loaded directly
define( 'K_COUCH_VERSION', '2.2.1' ); // Changes with every release
- define( 'K_COUCH_BUILD', '20190417' ); // YYYYMMDD - do -
+ define( 'K_COUCH_BUILD', '20200110' ); // YYYYMMDD - do -
if( file_exists(K_COUCH_DIR.'config.php') ){
require_once( K_COUCH_DIR.'config.php' );