| /** | 
|  * @author: Dennis Hernández | 
|  * @webSite: http://djhvscf.github.io/Blog | 
|  * @version: v1.3.0 | 
|  */ | 
|   | 
| (function ($) { | 
|     'use strict'; | 
|   | 
|     var flat = function (element, that) { | 
|         var result = {}; | 
|   | 
|         function recurse(cur, prop) { | 
|             if (Object(cur) !== cur) { | 
|                 result[prop] = cur; | 
|             } else if ($.isArray(cur)) { | 
|                 for (var i = 0, l = cur.length; i < l; i++) { | 
|                     recurse(cur[i], prop ? prop + that.options.flatSeparator + i : "" + i); | 
|                     if (l == 0) { | 
|                         result[prop] = []; | 
|                     } | 
|                 } | 
|             } else { | 
|                 var isEmpty = true; | 
|                 for (var p in cur) { | 
|                     isEmpty = false; | 
|                     recurse(cur[p], prop ? prop + that.options.flatSeparator + p : p); | 
|                 } | 
|                 if (isEmpty) { | 
|                     result[prop] = {}; | 
|                 } | 
|             } | 
|         } | 
|   | 
|         recurse(element, ""); | 
|         return result; | 
|     }; | 
|   | 
|     var flatHelper = function (data, that) { | 
|         var flatArray = []; | 
|   | 
|         $.each(!$.isArray(data) ? [data] : data, function (i, element) { | 
|             flatArray.push(flat(element, that)); | 
|         }); | 
|         return flatArray; | 
|     }; | 
|   | 
|     $.extend($.fn.bootstrapTable.defaults, { | 
|         flat: false, | 
|         flatSeparator: '.' | 
|     }); | 
|   | 
|     var BootstrapTable = $.fn.bootstrapTable.Constructor, | 
|         _initData = BootstrapTable.prototype.initData; | 
|   | 
|     BootstrapTable.prototype.initData = function (data, type) { | 
|         if (this.options.flat) { | 
|             data = flatHelper(data ? data : this.options.data, this); | 
|         } | 
|         _initData.apply(this, [data, type]); | 
|     }; | 
| })(jQuery); |