- Модуль: highloadblock
- Путь к файлу: ~/bitrix/modules/highloadblock/classes/general/prop_directory.php
- Класс: CIBlockPropertyDirectory
- Вызов: CIBlockPropertyDirectory::getDirectoryTableRow
function getDirectoryTableRow(addNew)
{
addNew = (addNew === 'row' ? 'row' : 'full');
var obSelectHLBlock = BX('hlb_directory_table_id');
if (!!obSelectHLBlock)
{
var rowNumber = parseInt(BX('hlb_directory_row_number').value, 10);
if (BX('IB_MAX_ROWS_COUNT'))
rowNumber = parseInt(BX('IB_MAX_ROWS_COUNT').value, 10);
if (isNaN(rowNumber))
rowNumber = 0;
var hlBlock = (-1 < obSelectHLBlock.selectedIndex ? obSelectHLBlock.options[obSelectHLBlock.selectedIndex].value : '');
var selectHLBlockValue = hlBlock;
if (addNew === 'full')
{
if (selectHLBlockValue == '-1')
{
getTableHead();
BX('hlb_directory_table_tr').style.display = 'table-row';
BX('hlb_directory_title_tr').style.display = 'table-row';
BX('hlb_directory_table_name').style.display = 'table-row';
BX('hlb_directory_table_name').disabled = false;
addNew = 'row';
rowNumber = 0;
}
else
{
BX('hlb_directory_table_name').disabled = true;
BX('hlb_directory_title_tr').style.display = 'none';
BX.ajax.post(
'highloadblock_directory_ajax.php',
{
lang: BX.message('LANGUAGE_ID'),
sessid: BX.bitrix_sessid(),
hlBlock: hlBlock,
rowNumber: rowNumber,
getTitle: 'Y',
IBLOCK_ID: '{$iblockID}',
multiple: '{$multiple}'
},
BX.delegate(function(result) {
BX('hlb_directory_table').innerHTML = result;
})
);
}
}
if (addNew === 'row')
{
BX.ajax.loadJSON(
'highloadblock_directory_ajax.php',
{
lang: BX.message('LANGUAGE_ID'),
sessid: BX.bitrix_sessid(),
hlBlock: hlBlock,
rowNumber: rowNumber,
addEmptyRow: 'Y',
IBLOCK_ID: '{$iblockID}',
multiple: '{$multiple}'
},
BX.delegate(function(result) {
var obRow = null,
obTable = BX('hlb_directory_table'),
i = '',
obCell = null,
rowNumber = 0;
if (!!obTable && 'object' === typeof result)
{
rowNumber = parseInt(BX('hlb_directory_row_number').value, 10);
if (!!BX('IB_MAX_ROWS_COUNT'))
rowNumber = parseInt(BX('IB_MAX_ROWS_COUNT').value, 10);
if (isNaN(rowNumber))
rowNumber = 0;
obRow = obTable.insertRow(obTable.rows.length);
obRow.id = 'hlbl_property_tr_'+rowNumber;
for (i in result)
{
obCell = obRow.insertCell(-1);
BX.adjust(obCell, { style: result[i].style, html: result[i].html });
}
BX('hlb_directory_row_number').value = rowNumber + 1;
if(BX('IB_MAX_ROWS_COUNT'))
BX('IB_MAX_ROWS_COUNT').value = rowNumber + 1;
}
})
);
}
}
}