Resultset van gemaakt
svn path=/Website/trunk/; revision=31445
This commit is contained in:
@@ -6,33 +6,62 @@
|
||||
File: fac_user_messages.asp (formerly news/news.asp)
|
||||
Description: Toont de gebruikersberichten (statusinfo) in een grid
|
||||
|
||||
Note: Niet erg gewijzigd, wel wat harde aannames toegevoegd,
|
||||
Functioneel is de noodzaak voor deze info veel minder
|
||||
Note: Functioneel is de noodzaak voor deze info veel minder
|
||||
geworden vanwege fac_list die veel meer info toont.
|
||||
|
||||
Geen resulttable hier, bij uitzondering
|
||||
|
||||
Toch maar eens via resulttable
|
||||
*/ %>
|
||||
|
||||
<!-- #include file="../Shared/common.inc" -->
|
||||
<!-- #include file="../Shared/iface.inc" -->
|
||||
<!-- #include file="../Shared/json2.js" -->
|
||||
<!-- #include file="../Shared/resultset_table_v2.inc" -->
|
||||
<%
|
||||
FCLTHeader.Requires({ plugins: ["jQuery"],
|
||||
js: ["./fac_user_messages.js"] });
|
||||
|
||||
var showall = getQParamInt("showall", 0) == 1;
|
||||
var outputmode = getQParamInt("outputmode", 0);
|
||||
|
||||
function fnrowClass(oRs)
|
||||
{
|
||||
var lclass = "";
|
||||
// zo was het, gewoon overgenomen
|
||||
if (oRs("web_user_mess_action_status").Value == 1)
|
||||
{
|
||||
if (oRs("web_user_mess_prioriteit").value==1)
|
||||
lclass = "newstextFreshRed";
|
||||
else
|
||||
lclass = "newstextFresh";
|
||||
}
|
||||
else
|
||||
lclass = "newstext";
|
||||
|
||||
return lclass;
|
||||
}
|
||||
|
||||
function fnrowData(oRs)
|
||||
{
|
||||
var data = {};
|
||||
data.action = oRs("fac_srtnotificatie_url").Value + oRs("web_user_mess_action_params").Value;
|
||||
data.action = data.action.replace(/\#/g, "&");
|
||||
if (data.action.indexOf("&urole") < 0)
|
||||
data.action += "&urole=fe";
|
||||
return JSON.stringify(data);
|
||||
}
|
||||
%>
|
||||
<html>
|
||||
<head>
|
||||
<% FCLTHeader.Generate() %>
|
||||
</head>
|
||||
<% FCLTHeader.Generate({outputmode:outputmode}) %>
|
||||
</head>
|
||||
|
||||
<body class="listbody" id="usermessbody">
|
||||
<% var buttons = [];
|
||||
buttons.push({title: L("lcl_mark_as_read_all"), icon: "bin_closed.png", action: "MarkAsReadAll()"});
|
||||
IFRAMER_HEADER(L("lcl_recent_news"), buttons); %>
|
||||
<%
|
||||
var buttons = [];
|
||||
buttons.push({title: L("lcl_mark_as_read_all"), icon: "bin_closed.png", action: "facDelete()"});
|
||||
buttons.push({title: L("lcl_refresh"), icon: "page_refresh.png", action: "FcltMgr.reload()" });
|
||||
|
||||
<table id="usermess" width='100%'>
|
||||
<% if (user_key != -1)
|
||||
{
|
||||
if (user_key != -1)
|
||||
{
|
||||
var sql = "SELECT m.web_user_mess_dsc"
|
||||
+ ", sn.fac_srtnotificatie_url"
|
||||
+ ", COALESCE(m.web_user_mess_action_params, ' ') web_user_mess_action_params"
|
||||
@@ -49,56 +78,25 @@
|
||||
// Tweeledig: beperken, maar tevens zorgen dat de sortering goed blijft!
|
||||
// Dat is: de nieuwste berichten bovenaan
|
||||
sql = "SELECT * FROM (" + sql + ") WHERE ROWNUM < " + S("portalnewsmax");
|
||||
oRs = Oracle.Execute(sql);
|
||||
var rst = new ResultsetTable({
|
||||
sql: sql,
|
||||
keyColumn: "web_user_message_key",
|
||||
ID: "usermess",
|
||||
rowData: fnrowData,
|
||||
rowClass: fnrowClass,
|
||||
title: L("lcl_recent_news"),
|
||||
showAll: showall,
|
||||
outputmode: outputmode,
|
||||
buttons: buttons
|
||||
});
|
||||
rst.addColumn(new Column({caption: L("lcl_date"), content: "web_user_mess_action_datum", datatype: "datetime", prettydate: true, nowrap: true }));
|
||||
rst.addColumn(new Column({caption: L("lcl_message"), content: "web_user_mess_dsc"}));
|
||||
rst.addAction({ action: "DoAction", caption: "", isDefault: true });
|
||||
rst.addAction({ action: "facDelete", caption: L("lcl_mark_as_read") });
|
||||
|
||||
while (!oRs.eof)
|
||||
{
|
||||
var isNew = oRs("web_user_mess_action_status").Value == 1;
|
||||
var cnt = rst.processResultset();
|
||||
|
||||
if (oRs("fac_srtnotificatie_url").Value != null )
|
||||
{
|
||||
var action = oRs("fac_srtnotificatie_url").Value + oRs("web_user_mess_action_params").Value;
|
||||
action = action.replace(/\#/g, "&");
|
||||
if (action.indexOf("&urole") < 0)
|
||||
action += "&urole=fe";
|
||||
}
|
||||
else
|
||||
var action = false;
|
||||
|
||||
var headline=oRs("web_user_mess_dsc").value;
|
||||
var headlinetitle = ""
|
||||
if (action)
|
||||
{
|
||||
// limit the length if it is too long and the user may click on it
|
||||
if (headline.length > S("portalnewslength"))
|
||||
{
|
||||
headlinetitle = headline;
|
||||
headline = headline.substr(0,S("portalnewslength"))+'...';
|
||||
}
|
||||
}
|
||||
%> <tr messKey=<%=oRs("web_user_message_key")%> class="<% = (isNew ? (oRs("web_user_mess_prioriteit").value==1?'newstextFreshRed':'newstextFresh') : 'newstext')%>">
|
||||
<td class="markread"
|
||||
title="<%=L("lcl_mark_as_read")%>"
|
||||
onClick="MarkAsRead(<%=oRs("web_user_message_key")%>, <%=isNew?1:0%>, 1)">
|
||||
</td>
|
||||
<td class="usermsgdate"><%=toDateTimeString(new Date(oRs("web_user_mess_action_datum").value), false, false, true)%></td>
|
||||
<td class="usermessage"><%
|
||||
if (action)
|
||||
{
|
||||
%> <a class="<%=(isNew ? (oRs("web_user_mess_prioriteit").value==1?'newstextFreshRed':'newstextFresh') : 'newstext')%>"
|
||||
onclick='DoAction("<%=oRs("web_user_message_key").Value%>","<%=isNew?'true':'false'%>","appl/<%=safe.htmlattr(action)%>")'
|
||||
title="<%=safe.htmlattr(headlinetitle)%>"
|
||||
target="_parent"><% = safe.html(headline) %></a><%
|
||||
}
|
||||
else
|
||||
{
|
||||
Response.Write(safe.html(headline));
|
||||
}
|
||||
%> </td></tr><%
|
||||
oRs.MoveNext();
|
||||
}
|
||||
}
|
||||
%>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -4,14 +4,24 @@
|
||||
|
||||
JS voor fac_user_messages.asp
|
||||
*/
|
||||
function DoAction(messKey, isNew, action) {
|
||||
if (isNew)
|
||||
MarkAsRead(messKey, isNew, 0);
|
||||
FcltMgr.openDetail(action, { reuse: true });
|
||||
function DoAction(row) {
|
||||
var key = row.getAttribute("ROWKEY");
|
||||
var rowData = eval("(" + row.getAttribute("ROWDATA") + ")");
|
||||
if (rowData.action)
|
||||
{
|
||||
MarkAsRead(key,0);
|
||||
FcltMgr.openDetail("appl/"+rowData.action, { reuse: true });
|
||||
}
|
||||
}
|
||||
|
||||
function MarkAsRead(messKey, wasnew, dopurge) {
|
||||
var purl = "fac_user_messages_setReadFlag.asp?messKey=" + messKey+(dopurge==1 ? "&purge=1" : "");
|
||||
function facDelete(row) {
|
||||
var key = row.getAttribute("ROWKEY");
|
||||
MarkAsRead(key,1);
|
||||
}
|
||||
|
||||
|
||||
function MarkAsRead(messKey, dodelete) {
|
||||
var purl = "fac_user_messages_setReadFlag.asp?messKey=" + messKey+(dodelete==1 ? "&purge=1" : "");
|
||||
var data = {messKey: messKey};
|
||||
|
||||
protectRequest.dataToken(data);
|
||||
@@ -20,8 +30,7 @@ function MarkAsRead(messKey, wasnew, dopurge) {
|
||||
,FcltCallback
|
||||
,"json"
|
||||
);
|
||||
|
||||
if (dopurge) $("[messKey="+messKey+"]").hide();
|
||||
if (dodelete) $("[ROWKEY="+messKey+"]").hide();
|
||||
}
|
||||
|
||||
function MarkAsReadAll()
|
||||
|
||||
Reference in New Issue
Block a user