-this.header_imageEl.on('load',this.onHeaderImageLoad,this);},getDragData:function(e){var A=this.getEl();if(A){var B={source:this,copy:false,nodes:this.getEl(),records:[]};B.ddel=A.dom;Roo.log(A.getWidth());B.ddel.style.width=A.getWidth()+'px';return B;}return false;
-},getTargetFromEvent:function(e,A){var B=e.getTarget();while((B!==null)&&(B.parentNode!=this.containerEl.dom)){B=B.parentNode;}var C={position:'',cards:[],card_n:-1,items_n:-1,card:false};var D=false;var E=0;var F=0;for(var i=0;i<this.items.length;i++){if(!this.items[i].el.hasClass('card')){continue;
-}D=this.getDropPoint(e,this.items[i].el.dom);F=C.cards.length;C.cards.push(this.items[i]);E=i;if(C.card_n<0&&D=='above'){C.position=F>0?'below':D;C.items_n=i>0?i-1:0;C.card_n=F>0?F-1:0;C.card=C.cards[C.card_n];}}if(!C.cards.length){C.card=true;C.position='below';
-C.items_n;return C;}if(C.card_n<0){C.card_n=E;C.card=C.cards[E];C.items_n=this.items.indexOf(C.cards[E]);C.position='below';}if(this.items[C.items_n].el==A){return false;}if(C.position=='below'){var G=C.card_n+1==C.cards.length?false:C.cards[C.card_n+1];if(G&&G.el==A){return false;
-}return C;}var H=C.card_n>0?C.cards[C.card_n-1]:false;if(H&&H.el==A){return false;}return C;},onNodeEnter:function(n,dd,e,A){return false;},onNodeOver:function(n,dd,e,A){var B=this.getTargetFromEvent(e,A.source.el);if(B===false){this.dropPlaceHolder('hide');
-return false;}Roo.log(['getTargetFromEvent',B]);this.dropPlaceHolder('show',B,A);return false;},onNodeOut:function(n,dd,e,A){this.dropPlaceHolder('hide');},onNodeDrop:function(n,dd,e,A){var B=this.getTargetFromEvent(e,A.source.el);if(B===false){return false;
-}this.dropPlaceHolder('hide');this.acceptCard(A.source,B.position,B.card,B.items_n);return true;},firstChildCard:function(){for(var i=0;i<this.items.length;i++){if(!this.items[i].el.hasClass('card')){continue;}return this.items[i];}return this.items.length?this.items[this.items.length-1]:false;
-},acceptCard:function(A,B,C){if(this.fireEvent("drop",this,A,B,C)===false){return false;}var D=C?this.items.indexOf(C):0;A.parent().removeCard(A);var E=A.el.dom;E.style.width='';if(C!==false&&C!==true&&C.el.dom.parentNode){var F=C.el.dom;if(B=='above'){F.parentNode.insertBefore(E,F);
-}else if(F.nextSibling){F.parentNode.insertBefore(E,F.nextSibling);}else{F.parentNode.append(E);}}else{this.containerEl.dom.append(E);}if(this.items.length){var G=[];for(var i=0;i<this.items.length;i++){if(i==D&&B=='above'){G.push(A);}G.push(this.items[i]);
-if(i==D&&B=='below'){G.push(A);}}this.items=G;Roo.log(this.items);}else{this.items.push(A);}A.parentId=this.id;return true;},removeCard:function(c){this.items=this.items.filter(function(e){return e!=c});var A=c.el.dom;A.parentNode.removeChild(A);A.style.width='';
-c.parentId=false;},getDropPoint:function(e,n,dd){if(dd){return false;}if(n==this.containerEl.dom){return "above";}var t=Roo.lib.Dom.getY(n),b=t+n.offsetHeight;var c=t+(b-t)/2;var y=Roo.lib.Event.getPageY(e);if(y<=c){return "above";}else{return "below";}},onToggleCollapse:function(e){if(this.collapsed){this.el.select('.roo-collapse-toggle').removeClass('collapsed');
-this.collapsableEl.addClass('show');this.collapsed=false;return;}this.el.select('.roo-collapse-toggle').addClass('collapsed');this.collapsableEl.removeClass('show');this.collapsed=true;},onToggleRotate:function(e){this.collapsableEl.removeClass('show');this.footerEl.removeClass('d-none');
-this.el.removeClass('roo-card-rotated');this.el.removeClass('d-none');if(this.rotated){this.collapsableEl.addClass('show');this.rotated=false;this.fireEvent('rotate',this,this.rotated);return;}this.el.addClass('roo-card-rotated');this.footerEl.addClass('d-none');
-this.el.select('.roo-collapsable').removeClass('show');this.rotated=true;this.fireEvent('rotate',this,this.rotated);},dropPlaceHolder:function(A,B,C){if(this.dropEl===false){this.dropEl=Roo.DomHelper.append(this.containerEl,{cls:'d-none'},true);}this.dropEl.removeClass(['d-none','d-block']);
-if(A=='hide'){this.dropEl.addClass('d-none');return;}this.dropEl.dom.parentNode.removeChild(this.dropEl.dom);if(B.card!==true){var D=B.card.el.dom;if(B.position=='above'){D.parentNode.insertBefore(this.dropEl.dom,D);}else if(D.nextSibling){D.parentNode.insertBefore(this.dropEl.dom,D.nextSibling);
-}else{D.parentNode.append(this.dropEl.dom);}}else{this.containerEl.dom.append(this.dropEl.dom);}this.dropEl.addClass('d-block roo-card-dropzone');this.dropEl.setHeight(Roo.get(C.ddel).getHeight());},setHeaderText:function(A){this.header=A;if(this.headerContainerEl){this.headerContainerEl.dom.innerHTML=A;
-}},onHeaderImageLoad:function(ev,he){if(!this.header_image_fit_square){return;}var hw=he.naturalHeight/he.naturalWidth;var ww=he.width;if(hw>1){Roo.get(he).setSize(ww*(1/hw),ww);}}});
+this.header_imageEl.on('load',this.onHeaderImageLoad,this);},getDragData:function(e){var target=this.getEl();if(target){var dragData={source:this,copy:false,nodes:this.getEl(),records:[]};dragData.ddel=target.dom;Roo.log(target.getWidth());dragData.ddel.style.width=target.getWidth()+'px';
+return dragData;}return false;},getTargetFromEvent:function(e,dragged_card_el){var target=e.getTarget();while((target!==null)&&(target.parentNode!=this.containerEl.dom)){target=target.parentNode;}var ret={position:'',cards:[],card_n:-1,items_n:-1,card:false}
+;var pos=false;var last_card_n=0;var cards_len=0;for(var i=0;i<this.items.length;i++){if(!this.items[i].el.hasClass('card')){continue;}pos=this.getDropPoint(e,this.items[i].el.dom);cards_len=ret.cards.length;ret.cards.push(this.items[i]);last_card_n=i;if(ret.card_n<0&&pos=='above'){ret.position=cards_len>0?'below':pos;
+ret.items_n=i>0?i-1:0;ret.card_n=cards_len>0?cards_len-1:0;ret.card=ret.cards[ret.card_n];}}if(!ret.cards.length){ret.card=true;ret.position='below';ret.items_n;return ret;}if(ret.card_n<0){ret.card_n=last_card_n;ret.card=ret.cards[last_card_n];ret.items_n=this.items.indexOf(ret.cards[last_card_n]);
+ret.position='below';}if(this.items[ret.items_n].el==dragged_card_el){return false;}if(ret.position=='below'){var card_after=ret.card_n+1==ret.cards.length?false:ret.cards[ret.card_n+1];if(card_after&&card_after.el==dragged_card_el){return false;}return ret;
+}var card_before=ret.card_n>0?ret.cards[ret.card_n-1]:false;if(card_before&&card_before.el==dragged_card_el){return false;}return ret;},onNodeEnter:function(n,dd,e,data){return false;},onNodeOver:function(n,dd,e,data){var target_info=this.getTargetFromEvent(e,data.source.el);
+if(target_info===false){this.dropPlaceHolder('hide');return false;}Roo.log(['getTargetFromEvent',target_info]);this.dropPlaceHolder('show',target_info,data);return false;},onNodeOut:function(n,dd,e,data){this.dropPlaceHolder('hide');},onNodeDrop:function(n,dd,e,data){var info=this.getTargetFromEvent(e,data.source.el);
+if(info===false){return false;}this.dropPlaceHolder('hide');this.acceptCard(data.source,info.position,info.card,info.items_n);return true;},firstChildCard:function(){for(var i=0;i<this.items.length;i++){if(!this.items[i].el.hasClass('card')){continue;}return this.items[i];
+}return this.items.length?this.items[this.items.length-1]:false;},acceptCard:function(move_card,position,next_to_card){if(this.fireEvent("drop",this,move_card,position,next_to_card)===false){return false;}var to_items_n=next_to_card?this.items.indexOf(next_to_card):0;
+move_card.parent().removeCard(move_card);var dom=move_card.el.dom;dom.style.width='';if(next_to_card!==false&&next_to_card!==true&&next_to_card.el.dom.parentNode){var cardel=next_to_card.el.dom;if(position=='above'){cardel.parentNode.insertBefore(dom,cardel);
+}else if(cardel.nextSibling){cardel.parentNode.insertBefore(dom,cardel.nextSibling);}else{cardel.parentNode.append(dom);}}else{this.containerEl.dom.append(dom);}if(this.items.length){var nitems=[];for(var i=0;i<this.items.length;i++){if(i==to_items_n&&position=='above'){nitems.push(move_card);
+}nitems.push(this.items[i]);if(i==to_items_n&&position=='below'){nitems.push(move_card);}}this.items=nitems;Roo.log(this.items);}else{this.items.push(move_card);}move_card.parentId=this.id;return true;},removeCard:function(c){this.items=this.items.filter(function(e){return e!=c}
+);var dom=c.el.dom;dom.parentNode.removeChild(dom);dom.style.width='';c.parentId=false;},getDropPoint:function(e,n,dd){if(dd){return false;}if(n==this.containerEl.dom){return "above";}var t=Roo.lib.Dom.getY(n),b=t+n.offsetHeight;var c=t+(b-t)/2;var y=Roo.lib.Event.getPageY(e);
+if(y<=c){return "above";}else{return "below";}},onToggleCollapse:function(e){if(this.collapsed){this.el.select('.roo-collapse-toggle').removeClass('collapsed');this.collapsableEl.addClass('show');this.collapsed=false;return;}this.el.select('.roo-collapse-toggle').addClass('collapsed');
+this.collapsableEl.removeClass('show');this.collapsed=true;},onToggleRotate:function(e){this.collapsableEl.removeClass('show');this.footerEl.removeClass('d-none');this.el.removeClass('roo-card-rotated');this.el.removeClass('d-none');if(this.rotated){this.collapsableEl.addClass('show');
+this.rotated=false;this.fireEvent('rotate',this,this.rotated);return;}this.el.addClass('roo-card-rotated');this.footerEl.addClass('d-none');this.el.select('.roo-collapsable').removeClass('show');this.rotated=true;this.fireEvent('rotate',this,this.rotated);
+},dropPlaceHolder:function(action,info,data){if(this.dropEl===false){this.dropEl=Roo.DomHelper.append(this.containerEl,{cls:'d-none'},true);}this.dropEl.removeClass(['d-none','d-block']);if(action=='hide'){this.dropEl.addClass('d-none');return;}this.dropEl.dom.parentNode.removeChild(this.dropEl.dom);
+if(info.card!==true){var cardel=info.card.el.dom;if(info.position=='above'){cardel.parentNode.insertBefore(this.dropEl.dom,cardel);}else if(cardel.nextSibling){cardel.parentNode.insertBefore(this.dropEl.dom,cardel.nextSibling);}else{cardel.parentNode.append(this.dropEl.dom);
+}}else{this.containerEl.dom.append(this.dropEl.dom);}this.dropEl.addClass('d-block roo-card-dropzone');this.dropEl.setHeight(Roo.get(data.ddel).getHeight());},setHeaderText:function(html){this.header=html;if(this.headerContainerEl){this.headerContainerEl.dom.innerHTML=html;
+}},onHeaderImageLoad:function(ev,he){if(!this.header_image_fit_square){return;}var hw=he.naturalHeight/he.naturalWidth;var ww=he.width;if(hw>1){Roo.get(he).setSize(ww*(1/hw),ww);Roo.get(he).setX((ww-(ww*(1/hw))/2);}}});