FSN#37938 Bulk acties zijn nu buttons ipv dropdown menu
svn path=/Website/trunk/; revision=31787
This commit is contained in:
@@ -155,7 +155,8 @@ function initActions(tableID, hambType)
|
||||
useHamb = hambType;
|
||||
$(function () {
|
||||
$("#" + tableID)
|
||||
.on('click', '.multiselect', FcltMgr.stopPropagation);
|
||||
.on('click', '.multiselect', FcltMgr.stopPropagation)
|
||||
.on('click', '.multiselect', function() { toggleFooter.apply(tableID) } );
|
||||
if (hambType == 0) // No hamburger, just mouseOver
|
||||
{
|
||||
$("#" + tableID)
|
||||
@@ -202,6 +203,17 @@ function $currentActionsDiv()
|
||||
return $("#allactions_" + tbl[0].id +".allactions");
|
||||
}
|
||||
|
||||
function toggleFooter()
|
||||
{
|
||||
var show = false;
|
||||
$("#" + this).find(".multiselect:checked").each(function() {
|
||||
show = true;
|
||||
return false;
|
||||
});
|
||||
var footerButtons = $("#" + this).find("#multiactiondiv");
|
||||
show ? footerButtons.css('visibility','visible') : footerButtons.css('visibility','hidden');
|
||||
}
|
||||
|
||||
function willHide()
|
||||
{
|
||||
$("li#printhamburger").each(function() {
|
||||
@@ -392,30 +404,32 @@ function getKeyString(rowArray)
|
||||
return keyString.join(",");
|
||||
}
|
||||
|
||||
function doMulti(thisID)
|
||||
function doMulti(thisID, func, tekst, onceMulti)
|
||||
{
|
||||
var actionSelect = document.getElementById("multiaction");
|
||||
if (actionSelect[actionSelect.selectedIndex].value == '') return;
|
||||
|
||||
var regels = $("#" + thisID + " .multiselect:checked");
|
||||
if (regels.length > 0)
|
||||
{
|
||||
FcltMgr.confirm(L("lcl_shared_doaction").format(actionSelect[actionSelect.selectedIndex].text, regels.length), function() {
|
||||
FcltMgr.confirm(L("lcl_shared_doaction").format(tekst, regels.length), function() {
|
||||
// Als multiOnce is gedefinieerd dan wordt de actie 1 keer aangeroepen waarbij een string met keys wordt meegegeven aan de actiefunctie
|
||||
// anders wordt voor elke aangevinkte regel de actie aangeroepen waarbij elke keer een key wordt meegegeven aan de actiefunctie
|
||||
|
||||
var multiOnce = false;
|
||||
var multiOnceArray = new Array();
|
||||
var teller = 0;
|
||||
$("#" + thisID + " .multiselect:checked").each(function() {
|
||||
teller++;
|
||||
var rowData = eval('(' + this.parentNode.parentNode.getAttribute("ROWDATA") + ')');
|
||||
multiOnce = actionSelect[actionSelect.selectedIndex].getAttribute("multiOnce");
|
||||
multiOnce = onceMulti;
|
||||
if (multiOnce)
|
||||
{
|
||||
multiOnceArray.push(this.parentNode.parentNode);
|
||||
}
|
||||
else
|
||||
eval(actionSelect[actionSelect.selectedIndex].value).call(null, this.parentNode.parentNode, true); // true voor noconfirm i.g.v. multi actie
|
||||
eval(func).call(null, this.parentNode.parentNode, true); // true voor noconfirm i.g.v. multi actie
|
||||
});
|
||||
if (multiOnce)
|
||||
eval(actionSelect[actionSelect.selectedIndex].value).call(null, multiOnceArray, true); // true voor noconfirm i.g.v. multi actie
|
||||
eval(func).call(null, multiOnceArray, true); // true voor noconfirm i.g.v. multi actie
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -430,6 +444,7 @@ function checkAll(thisID, zelf)
|
||||
{
|
||||
this.checked = zelf.checked;
|
||||
});
|
||||
toggleFooter.apply(thisID);
|
||||
}
|
||||
function RSdefaultAction(thisID, defaultAction)
|
||||
{
|
||||
|
||||
@@ -904,26 +904,27 @@ function __rsProcessResultset(processParams) // processParams wordt blind aan al
|
||||
|
||||
if (anyMultiActions && !inline)
|
||||
{
|
||||
appender = "\n<div id='multiactiondiv' style='float: left'><label><span id='multilabel'>" + L("lcl_with_selectedlabel") + "</span>"
|
||||
appender += "\n<select id='multiaction'>"
|
||||
appender += "<option value=''>" + L("lcl_with_selected") + "</option>";
|
||||
appender = "\n<div id='multiactiondiv' style='float: left; visibility: hidden;'><label><span id='multilabel'>" + L("lcl_with_selected") + ": </span>";
|
||||
for (var i=0; i < actions.length; i++)
|
||||
{
|
||||
if (actions[i].multi)
|
||||
appender += "<option value='" + actions[i].action + (actions[i].multiOnce? "' multiOnce='" + actions[i].multiOnce : "") +"'>" + actions[i].caption + "</option>";
|
||||
appender += "<span onClick='javascript:doMulti(\"" + this.ID + "\", \"" +
|
||||
actions[i].action + "\", \"" +
|
||||
actions[i].caption + "\", " +
|
||||
actions[i].multiOnce + ");" +
|
||||
"FcltMgr.stopPropagation(event);' class='button footerbutton'>"+actions[i].caption+"</span>";
|
||||
}
|
||||
appender += "</select>";
|
||||
appender += "\n<span onClick='javascript:doMulti(\"" + this.ID + "\");FcltMgr.stopPropagation(event);' class='button'>"+L("lcl_domulti")+"</span></div>";
|
||||
appender += "</div>";
|
||||
htmlFoot += "<tr><td class='rsfooter' colspan=" + (columns.length + (hasInlineDetails? 1 : 0) + (!isPrinting && !isExcel && anyMultiActions && !inline? 1 : 0)) + ">" + appender + "</td></tr>";
|
||||
}
|
||||
|
||||
if (htmlFoot != "")
|
||||
{
|
||||
htmlFoot = "<tfoot>" + htmlFoot + "</tfoot>";
|
||||
}
|
||||
|
||||
html += htmlFoot;
|
||||
|
||||
Response.Write(html);
|
||||
|
||||
endTable();
|
||||
|
||||
// 'Klik voor meer' onderaan de tabel
|
||||
|
||||
Reference in New Issue
Block a user