Timelinr.js 981 Bytes
define(function () {
    'use strict';

    var external = '\
<li class="wev-table-view-cell wev-media" > \
    <div class="wev-media-object wev-pull-left"> \
        <div>$${year}</div> \
        <div>$${monthday}</div> \
    </div> \
    <div class="wev-media-body"> \
        <a class="wev-navigate-right {@if readonly == 1}wev-data-readonly{@/if}"> \
            <div class="wev-media-inner"> \
                <div class="wev-media-title">$${title}</div> \
                {@each others as row} \
                <div class="wev-ellipsis"> \
                    {@each row as desc}$${desc}{@/each} \
                </div> \
                {@/each} \
            </div> \
        </a>\
    </div>\
</li>';

    function Timelinr() { }

    Timelinr.prototype = {
        extendTpl: function (template) {
            template = (template || "").replace(/<\/ul>[\s\S]*$/g, "");

            return template + external + "</ul></div>";
        }
    };

    return Timelinr;
});