
/* gettext library */

var catalog = new Array();

function pluralidx(count) { return (count == 1) ? 0 : 1; }
catalog['CATALOGS_TEMPLATE_QUERY_SERVICE_NOT_FOUND_LABEL'] = 'Data service not found';
catalog['DASHBOARD_JSC_QUERY_ACCEPT_LABEL_BUTTON'] = 'Accept';
catalog['DASHBOARD_JSC_QUERY_ALERT_TITLE'] = 'Warning';
catalog['DASHBOARD_JSC_QUERY_CANCEL_LABEL_BUTTON'] = 'Cancel';
catalog['DASHBOARD_JSC_QUERY_CATEGORY_CHOICES_00'] = 'All';
catalog['DASHBOARD_JSC_QUERY_LOADING_SERVLET_MESSAGE'] = 'Executing the data service. Please wait a few seconds...';
catalog['DASHBOARD_JSC_QUERY_SERVLET_EXECUTE_ERROR_MESSAGE'] = 'Could not be executed.';
catalog['DASHBOARD_JSC_QUERY_SERVLET_NO_COMMAND_ERROR'] = 'You have tried to execute an anonymous data service';
catalog['DATASOURCE_JSC_INSERT_CHECKED_LENGTH_MESSAGE'] = 'The length of %s must be between %s and %s';
catalog['DATASOURCE_JSC_INSERT_LOAD_DATA_SOURCE_ERROR_MESSAGE'] = 'Error loading the data source. Please try again';
catalog['EXPLORER_JSC_QUERY_CREATED_BY_LABEL'] = 'Created By ';
catalog['EXPLORER_JSC_QUERY_PROVIDER_LABEL'] = 'Provider ';
catalog['JSC_INVALID_LENGTH_ERROR_MESSAGE'] = 'Invalid length';
catalog['OPERATIONS_JSC_INSERT_ANOTHER_TABLE_SELECTED_ERROR_MESSAGE'] = 'You can not select two or more tables simultaneously';
catalog['OPERATIONS_JSC_INSERT_CANT_SELECT_ROWS_COLS_AND_CELLS_ERROR_MESSAGE'] = 'Unable to select cells and rows / columns at the same time ';
catalog['OPERATIONS_JSC_INSERT_LOAD_DATA_SOURCE_MESSAGE'] = 'Loading data source';
catalog['OPERATIONS_JSC_INSERT_NO_DATA_SELECTED_ERROR_MESSAGE'] = 'No data was selected. Please, select at least one data.';
catalog['OPERATIONS_JSC_INSERT_OPERATION_ACCEPT_BUTTON_LABEL'] = 'Accept';
catalog['OPERATIONS_JSC_INSERT_OPERATION_CANCEL_BUTTON_LABEL'] = 'Cancel';
catalog['OPERATIONS_JSC_INSERT_SELECTED_DATA'] = 'Please select at least one data';
catalog['OPERATIONS_JSC_SELECT_SELECT_CELLS_ERROR_MESSAGE'] = 'Unable to select cells from different tables';
catalog['OPERATIONS_JSC_SELECT_SELECT_COLS_CELLS_ERROR_MESSAGE'] = 'Unable to select cells and columns at the same time';
catalog['OPERATIONS_JSC_SELECT_SELECT_COLS_ERROR_MESSAGE'] = 'Unable to select cols from different tables';
catalog['OPERATIONS_JSC_SELECT_SELECT_ROWS_ERROR_MESSAGE'] = 'Unable to select rows from different tables';
catalog['SERVICES_JSC_INSERT_CATEGORY_ACCEPT_BUTTON_LABEL'] = 'Accept';
catalog['SERVICES_JSC_INSERT_CATEGORY_CANCEL_BUTTON_LABEL'] = 'Cancel';
catalog['SERVICES_JSC_INSERT_EDIT_CELLS_ACCEPT_BUTTON_LABEL'] = 'Accept';
catalog['SERVICES_JSC_INSERT_EDIT_CELLS_CANCEL_BUTTON_LABEL'] = 'Cancel';
catalog['SERVICES_JSC_INSERT_SERVICE_ACCEPT_BUTTON_LABEL'] = 'Accept';
catalog['SERVICES_JSC_INSERT_SERVICE_CANCEL_BUTTON_LABEL'] = 'Cancel';
catalog['SERVICES_JSC_VIEW_ACCEPT_BUTTON_LABEL'] = 'Accept';
catalog['SERVICES_JSC_VIEW_CANCEL_BUTTON_LABEL'] = 'Cancel';


function gettext(msgid) {
  var value = catalog[msgid];
  if (typeof(value) == 'undefined') {
    return msgid;
  } else {
    return (typeof(value) == 'string') ? value : value[0];
  }
}

function ngettext(singular, plural, count) {
  value = catalog[singular];
  if (typeof(value) == 'undefined') {
    return (count == 1) ? singular : plural;
  } else {
    return value[pluralidx(count)];
  }
}

function gettext_noop(msgid) { return msgid; }

function interpolate(fmt, obj, named) {
  if (named) {
    return fmt.replace(/%\(\w+\)s/g, function(match){return String(obj[match.slice(2,-2)])});
  } else {
    return fmt.replace(/%s/g, function(match){return String(obj.shift())});
  }
}

