ns('Carib.Order.Widgets');

/**
 * Common info table
 * 
 * @version $Id: common_info_table.js 542 2009-09-08 15:26:10Z  $
 */
Carib.Order.Widgets.CommonInfoTable = function(config) {
  config = $.extend({
    column_model: [ 'contacts', 'budget', 'duration', 'startDate', 'arrivalDate', 'control' ]
  }, config || {});
  
  Carib.Order.Widgets.CommonInfoTable.superclass.constructor.call(this, config);
}

utils.extend(Carib.Order.Widgets.CommonInfoTable, Carib.Order.Widgets.EditableTable, {
  _getRowClass: function(record, num) {
    return num % 2 == 0 ? 'two' : false; 
  },
  
  _contactsRenderer: function(record) {
    var content = '';
    if(record.data.name)
      content += '<div>' + record.data.name + '</div>';
    if(record.data.phones)
      content += '<div><strong>Телефоны:</strong><br/>' + record.data.phones + '</div>';
    if(record.data.email)
      content += '<div><strong>E-mail:</strong><br/>' + record.data.email + '</div>';
    return { content: content };
  },
  
  _durationRenderer: function(record) {
    var content = '';
    content += '<div><strong>Продолжительность тура (ночей):</strong> ' + record.data.travel_duration + '</div>';
    return { content: content };
  },
  
  _startDateRenderer: function(record) {
    return { content: $.strftime('%d.%m.%Y', record.data.start_date) };
  },
  
  _arrivalDateRenderer: function(record) {
    return { content: $.strftime('%d.%m.%Y', record.data.arrival_date) };
  },
  
  _controlRenderer: function(record) {
    var $content = $('<div class="control"></div>');
    var $edit_button = $('<a href="javascript:void(0)" class="ui-state-default ui-corner-all" title="Изменить"><span class="ui-icon ui-icon-pencil">&nbsp;</span></a>').appendTo($content);
    $edit_button.click(this.onEdit.createDelegate(this, [record]));
    this._setHover($edit_button);
    return { $content: $content };
  }  
});
