﻿//
// ActionLink - podpora sérií shodných postback elementů zpracovávaných na serveru v jediném eventhandleru.
//              elementy jsou na klientské straně představovány jediným input hidden tagem, který se po aktivaci
//              elementu vřadí k prvkům dokumentu (a tedy i requestu) s hodnotou rozlišující prvek v sérii
// 
function ActionLink(controlID) {
	this.ID = controlID;
}

// vyvolání postbacku s eventuálním potvrzovacím dialogem
ActionLink.prototype.confirm = function(value, confirmText) {
    if (confirmText) if (confirmText != '') if (!confirm(confirmText)) { return; }
    if (document.forms.length == 0) { return; }
    var mainForm = document.forms[0];
    if (!mainForm) { return; }
    try { if (docEl('__EVENTTARGET')) docEl('__EVENTTARGET').value = '' } catch (e) { }
    mainForm.appendChild(this.create(this.ID, value));
    mainForm.submit();
}

// vytvoří hidden input tag s požadovanou hodnotou (rozlišujícím atributem prvku v sérii)
ActionLink.prototype.create = function(name, value) {
	var hiddenTag = document.createElement('input');
	hiddenTag.setAttribute('type', 'hidden');
	hiddenTag.setAttribute('name', name);
	hiddenTag.setAttribute('value', value);
	return hiddenTag;
}
