ThinkCo.namespace ('ThinkCo.component');
ThinkCo.component.Corners    = {};
ThinkCo.component.Corners.internal = function (className, tag, base, corners, elmTag) {
    if (!tag) {
        tag        = '*';
    };
    if (!base) {
        base    = '';
    };
    if (corners == null) {
        corners    = 4;
    };
    if (!elmTag) {
        elmTag    = 'div';
    };
    var _internal = function (el, num, elmTag) {
        for (var j = 1; j <= num; j++) {
            el.appendChild (YAHOO.util.Dom.create (elmTag, { className : 'jsCorner crn-' + j }));
        };
    };
    var items;
    if ( typeof ( className ) == 'object' ) {
        items    = className;
    } else {
        items    = YAHOO.util.Dom.getElementsByClassName (className, tag, base);
    };
    for (var i = 0; i < items.length; i++) {
        _internal (items [ i ], corners, elmTag);
    };
};
ThinkCo.component.Corners.internalWrap = function (className, tag, base, corners, elmTag, classes, prefix) {
    if (!tag) {
        tag        = '*';
    };
    if (!base) {
        base    = '';
    };
    if (corners == null) {
        corners    = 4;
    };
    if (!elmTag) {
        elmTag    = 'div';
    };
    if (typeof (classes) == 'string') {
        classes    = classes.split (' ');
    };
    if (!classes) {
        classes    = [];
    };
    if (prefix == null) {
        prefix    = '';
    };
    var _internalWrap = function (el, num, elmTag, classes, prefix) {
        el    = YAHOO.util.Dom.get ( el );
        for (var f = 0; f < classes.length; f++) {
            YAHOO.util.Dom.addClass (el, classes [ f ]);
        };
        var tmp_elementRoot    = tmp_element = YAHOO.util.Dom.create (elmTag, { className : 'jsCorner ' + prefix + 'crn-' + 1 });
        for (var j = 2; j <= num; j++) {
            var tmp_element2    = YAHOO.util.Dom.create (elmTag, { className : 'jsCorner ' + prefix + 'crn-' + j });
            tmp_element.appendChild (tmp_element2);
            tmp_element            = tmp_element2;
        };
        var tmp_children    = el.childNodes;
        for (var z = 0; z < tmp_children.length; z++) {
            if (tmp_children[z].nodeType == 1) {
                tmp_element.appendChild (tmp_children [ z ]);
            };
        };
        el.appendChild (tmp_elementRoot);
    };
    var items;
    if ( typeof ( className ) == 'object' ) {
        items    = className;
    } else {
        items    = YAHOO.util.Dom.getElementsByClassName (className, tag, base);
    };
    for (var i = 0; i < items.length; i++) {
        _internalWrap (items [ i ], corners, elmTag, classes, prefix);
    };
};
ThinkCo.component.Corners.externalWrap = function (className, tag, base, corners, classes, elmTag) {
    if (!tag) {
        tag        = '*';
    };
    if (!base) {
        base    = '';
    };
    if (corners == null) {
        corners    = 4;
    };
    if (!elmTag) {
        elmTag    = 'div';
    };
    if (!classes) {
        classes    = '';
    };
    var _externalWrap = function (el, num, classes, elmTag, main) {
        el    = YAHOO.util.Dom.get ( el );
        el.parentNode.replaceChild (main = YAHOO.util.Dom.create (elmTag, { className : 'jsCorner ' + classes }), el);
        for (var j = 1; j <= num; j++) {
            main.appendChild (main = YAHOO.util.Dom.create (elmTag, { className : 'jsCorner crn-' + j }));
        };
        main.appendChild (el);
    };
    var items;
    if ( typeof ( className ) == 'object' ) {
        items    = className;
    } else {
        items    = YAHOO.util.Dom.getElementsByClassName (className, tag, base);
    };
    for (var i = 0; i < items.length; i++) {
        _externalWrap (items [ i ], corners, classes, elmTag);
    };
};