jQuery.fn.MakeCorner = function() {
  return this.each( function() {
  if ( $(this).parent('.input-lt').length ) return;
  var classes = $(this).hasClass('el') ? ['el-wrap', 'el'] :
          $(this).hasClass('el-gray') ? ['el-gray-wrap', 'el-gray'] :
          $(this).hasClass('but-blue') ? ['but-blue-wrap', 'but-blue'] :
          $(this).hasClass('but-gray') ? ['but-gray-wrap', 'but-gray'] :
          $(this).hasClass('input-blue') ? ['input-blue-wrap', 'input-blue'] :
          $(this).hasClass('input-gray') ? ['input-gray-wrap', 'input-gray'] : 
          $(this).hasClass('other') ? ['other-wrap', 'other'] : 
          $(this).hasClass('other-gray') ? ['other-gray-wrap', 'other-gray'] : 
          '';

  var data = $(this).attr('data');
  var attr = { width: 'auto', corners: 'lt rt lb rb' };
  if ( typeof(data) != 'undefined' ) {
    $.map( data.split(';'), function (val, n) {
      var vals = val.split('=');
      attr[vals[0]] = vals[1];
    });
  }

  var inner_el = '';
  $.map(attr.corners.split(' '), function(val, i){
      inner_el = '<div class="input-'+val+' '+classes[1]+'-'+val+'">'+inner_el+'</div>';
    });

    $(this).css('width', attr['width']).wrap('<div class="input-t '+classes[1]+'-t input ' + classes[0] + '"><div class="'+classes[1]+'-r input-r"><div class="input-b '+classes[1]+'-b"><div class="input-l '+classes[1]+'-l">'+inner_el+'</div></div></div></div>');
  });
};

jQuery.fn.MakeRadio = function() {
  return this.each( function() {
    if ( $(this).parent('.input-radio').length ) return;
    var wrap_el = $('<div class="input-radio"></div>').click( function () {
      var name = $(this).find('input').attr('name');
      $(this).find('input').attr('checked', 'checked');
      $('input[type="radio"][name="'+name+'"]').each( function () {
        var cl = $(this).parent().attr('class').replace('-sel', '');
        $(this).parent().attr('class', cl);
      } );

      var cl = $(this).attr('class').replace('-sel', '');
      $(this).attr('class', cl+'-sel');
    });
    if ( $(this).attr('checked') ) wrap_el.attr('class', wrap_el.attr('class') + '-sel');
    $(this).css('opacity', 0).wrap(wrap_el);
  });
};

jQuery.fn.MakeCheckbox = function() {
  return this.each( function() {
    if ( $(this).parent('.input-checkbox').length ) return;
    var wrap_el = $('<div class="input-checkbox"></div>').click( function () {
      if ( $(this).attr('class').match(/\-sel$/) ) {
        $(this).find('input').attr('checked', '');
        var cl = $(this).attr('class').replace('-sel', '');
        $(this).attr('class', cl);
      } else {
        $(this).find('input').attr('checked', 'checked');
        var cl = $(this).attr('class').replace('-sel', '');
        $(this).attr('class', cl+'-sel');
      }
    });
    if ($(this).attr('checked')) {
      wrap_el.attr('class', wrap_el.attr('class') + '-sel');
    }
    $(this).css('opacity', 0).wrap(wrap_el);
  });
};


var _stop_make_conrenrs = false;
function makeCorners() {
  $('[rel="corner"]').MakeCorner();
  $('[rel="radio"]').MakeRadio();
  $('[rel="checkbox"]').MakeCheckbox();
  if ( ! _stop_make_conrenrs )
    setTimeout('makeCorners()', 50);
}
setTimeout('makeCorners()', 50);


$(document).ready( function () {
  _stop_make_conrenrs = true;
});


