FSN#38071 hamburgers worden nu allen weergegeven als er inline actions zijn

svn path=/Website/trunk/; revision=31148
This commit is contained in:
2016-10-19 12:48:54 +00:00
parent d331665e67
commit ff165e0a65

View File

@@ -17,6 +17,7 @@ FCLTHeader.Requires({ plugins: ["jQuery"],
});
var APIname = getQParam("API","");
var touch = getQParam("touch","") == 1;
var hasInlineActions = false;
var book_id = null;
if (APIname == "REPORT")
{
@@ -668,6 +669,7 @@ function __rsProcessResultset(processParams) // processParams wordt blind aan al
anyMultiActions |= this.actions[i].multi;
}
// Eerst: maak <20><>n div met alle acties.
var hasActionsCol = 0;
var skip = 0;
@@ -687,11 +689,13 @@ function __rsProcessResultset(processParams) // processParams wordt blind aan al
hasActionsCol++;
var actionsDiv = "";
var aantalInline = 0;
for (var i = 0; i < this.actions.length; i++)
{
if (this.actions[i].single === false) // triple '=' omdat undefined niet false mag zijn
continue; // niet ook nog inline
if (!this.actions[i].isDefault && !this.actions[i].onlyMulti)
aantalInline++;
var def = (this.actions[i].isDefault? " isdefault='1'" : "")
+ (this.actions[i].onlyMulti? " onlymulti='1'" : "")
+ (this.actions[i].isDefault || this.actions[i].onlyMulti? " style='display:none'" : "");
@@ -701,6 +705,8 @@ function __rsProcessResultset(processParams) // processParams wordt blind aan al
val = "\n<span class='ia2' " + def + " onclick='doA(event, this, \"" + this.actions[i].action + "\")'>";
actionsDiv += val + this.actions[i].caption + "</span>";
}
hasInlineActions = aantalInline > 0;
if (hasInlineActions) hasActionsCol++;
html += "\n<div id='allactions_" + ID + "' class='allactions' style='display:none' hasActionsCol='"+hasActionsCol+"' >" + actionsDiv + "</div>";
html += "\n<script type='text/javascript'>"
html += "\n initActions('" + this.ID + "', "+(device.test(device.isTouch)?1:0)+")"
@@ -1038,9 +1044,12 @@ function __rsMakeTableHeader(oRs, oRsFlexData, anyMultiActions)
{
html += "<th class='sorttable_nosort'><input type=checkbox class='master' onclick='checkAll(\"" + ID + "\", this)'></th>";
}
if (device.test(device.isTouch) && hasInlineActions)
{
html += "<th class='sorttable_nosort'></th>";
}
if (inlineDetails)
{
if (device.test(device.isTouch)) html += "<th class='sorttable_nosort'></th>";
html += "<th>"+L("lcl_inlinecolumnheader")+"</th>";
}
}
@@ -1054,7 +1063,6 @@ function __rsMakeTableHeader(oRs, oRsFlexData, anyMultiActions)
if ((!isPrinting && (columns[i].purpose & VIEW_ONLY)) ||
((isPrinting || showProperties || isExcel) && (columns[i].purpose & PRINTING_ONLY)))
{
// __DoLog(columns[i]);
if ((isPrinting || showProperties || isExcel || !columns[i].combine) && !(isExcel && columns[i].hidden))
{
html += "<th";
@@ -1170,6 +1178,8 @@ function __rsMakeTableRow(oRs, oRsFlexData, cnt, anyMultiActions, noFlexResult)
var validator = rowActionEnabler(oRs, this.processParams);
var actionbits = "";
var noActionBit = "";
for (var i = 0; i < actions.length; i++)
{
if (actions[i].single === false) // triple '=' omdat undefined niet false mag zijn
@@ -1180,9 +1190,11 @@ function __rsMakeTableRow(oRs, oRsFlexData, cnt, anyMultiActions, noFlexResult)
if (actions[i].enabler && validator && !validator[actions[i].enabler])
{
actionbits += "0";
noActionBit += "0";
continue; // niet enabled
}
actionbits += "1"; // Enabled
noActionBit += "0";
}
appender += " ACTIONBITS='" + safe.htmlattr(actionbits) + "'";
}
@@ -1198,9 +1210,16 @@ function __rsMakeTableRow(oRs, oRsFlexData, cnt, anyMultiActions, noFlexResult)
appender += "<td><input type=checkbox class='multiselect'" + (isChecked?' checked=1':'') + "></td>";
}
if (hasInlineDetails && device.test(device.isTouch))
if (device.test(device.isTouch) && hasInlineActions)
{
appender += "<td><div class=\"hamburger\"><img src=\"../pictures/hamburger.png\"></img></div></td>";
if (actionbits.substr(1) == noActionBit.substr(1))
{
appender += "<td></td>";
}
else
{
appender += "<td><div class=\"hamburger\"><img src=\"../pictures/hamburger.png\"></img></div></td>";
}
}
if (!isPrinting && !isExcel && inlineDetails)