|  | @@ -356,34 +356,16 @@ Utils = {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    // Determine the new sort index
 | 
	
		
			
				|  |  |    calculateIndex(prevCardDomElement, nextCardDomElement, nCards = 1) {
 | 
	
		
			
				|  |  | -    let base, increment;
 | 
	
		
			
				|  |  | -    // If we drop the card to an empty column
 | 
	
		
			
				|  |  | -    if (!prevCardDomElement && !nextCardDomElement) {
 | 
	
		
			
				|  |  | -      base = 0;
 | 
	
		
			
				|  |  | -      increment = 1;
 | 
	
		
			
				|  |  | -      // If we drop the card in the first position
 | 
	
		
			
				|  |  | -    } else if (!prevCardDomElement) {
 | 
	
		
			
				|  |  | -      base = Blaze.getData(nextCardDomElement).sort - 1;
 | 
	
		
			
				|  |  | -      increment = -1;
 | 
	
		
			
				|  |  | -      // If we drop the card in the last position
 | 
	
		
			
				|  |  | -    } else if (!nextCardDomElement) {
 | 
	
		
			
				|  |  | -      base = Blaze.getData(prevCardDomElement).sort + 1;
 | 
	
		
			
				|  |  | -      increment = 1;
 | 
	
		
			
				|  |  | +    let prevData = null;
 | 
	
		
			
				|  |  | +    let nextData = null;
 | 
	
		
			
				|  |  | +    if (prevCardDomElement) {
 | 
	
		
			
				|  |  | +      prevData = Blaze.getData(prevCardDomElement)
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -    // In the general case take the average of the previous and next element
 | 
	
		
			
				|  |  | -    // sort indexes.
 | 
	
		
			
				|  |  | -    else {
 | 
	
		
			
				|  |  | -      const prevSortIndex = Blaze.getData(prevCardDomElement).sort;
 | 
	
		
			
				|  |  | -      const nextSortIndex = Blaze.getData(nextCardDomElement).sort;
 | 
	
		
			
				|  |  | -      increment = (nextSortIndex - prevSortIndex) / (nCards + 1);
 | 
	
		
			
				|  |  | -      base = prevSortIndex + increment;
 | 
	
		
			
				|  |  | +    if (nextCardDomElement) {
 | 
	
		
			
				|  |  | +      nextData = Blaze.getData(nextCardDomElement);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -    // XXX Return a generator that yield values instead of a base with a
 | 
	
		
			
				|  |  | -    // increment number.
 | 
	
		
			
				|  |  | -    return {
 | 
	
		
			
				|  |  | -      base,
 | 
	
		
			
				|  |  | -      increment,
 | 
	
		
			
				|  |  | -    };
 | 
	
		
			
				|  |  | +    const ret = Utils.calculateIndexData(prevData, nextData, nCards);
 | 
	
		
			
				|  |  | +    return ret;
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    manageCustomUI() {
 |