FSN#35297 Simpeler/minder filteren na wat voorkennischecks (deels ook RLI)
svn path=/Website/trunk/; revision=28778
This commit is contained in:
@@ -188,20 +188,36 @@ else
|
||||
autfunction = "WEB_MLDUSE";
|
||||
|
||||
var authparams = user.checkAutorisation(autfunction);
|
||||
|
||||
|
||||
// ------------------------------------------------
|
||||
// Some analysis to check relevance of some filters
|
||||
//
|
||||
// Fast check to see if we have anything to do with orders
|
||||
// If not, we can suppress a few filters.
|
||||
sql= "SELECT 1 FROM mld_opdr WHERE ROWNUM = 1";
|
||||
oRs = Oracle.Execute(sql);
|
||||
var anyorders = !oRs.eof;
|
||||
oRs.close();
|
||||
|
||||
// Fast check to see if we have anything to do with geographics
|
||||
// If not, we can suppress a few filters.
|
||||
sql= "SELECT 1 FROM ins_srtdiscipline WHERE (ins_srtdiscipline_alg=1 OR ins_srtdiscipline_ins=1 OR ins_srtdiscipline_bes=1) AND ROWNUM = 1";
|
||||
oRs = Oracle.Execute(sql);
|
||||
var anygeo = !oRs.eof;
|
||||
oRs.close();
|
||||
|
||||
// Fast check to see if we have anything to do with objects
|
||||
sql= "SELECT 1 FROM ins_srtdiscipline WHERE (ins_srtdiscipline_ins=1) AND ROWNUM = 1";
|
||||
oRs = Oracle.Execute(sql);
|
||||
var anyobj = !oRs.eof;
|
||||
oRs.close();
|
||||
|
||||
// Fast check to see if we have anything to do with orders
|
||||
// If not, we can suppress a few filters.
|
||||
sql= "SELECT 1 FROM mld_stdmeldinggroep WHERE ROWNUM = 1";
|
||||
oRs = Oracle.Execute(sql);
|
||||
var anymldgroup = !oRs.eof;
|
||||
oRs.close();
|
||||
|
||||
|
||||
|
||||
// VALIDATE AND PREPARE
|
||||
%>
|
||||
@@ -428,7 +444,8 @@ oRs.close();
|
||||
<% }
|
||||
if (!frontend)
|
||||
{
|
||||
|
||||
|
||||
if (srtdisc == -1) { // TODO netjes afmaken: als het readonly is want meegegeven, dan hoef ik het niet te tonen ook
|
||||
//<!-- Soort melding -->
|
||||
// Als een srtdisc meegegeven dan geen lege optie
|
||||
// en dan is hidden field srtdisc van hiervoor effectief
|
||||
@@ -448,23 +465,45 @@ oRs.close();
|
||||
+ " AND m1.ins_srtdiscipline_key = sd.ins_srtdiscipline_key"
|
||||
+ " AND md.ins_discipline_key = m1.ins_discipline_key"
|
||||
+ ") "
|
||||
+ (srtdisc != -1
|
||||
? " AND ins_srtdiscipline_key = " + srtdisc
|
||||
: " ")
|
||||
+ " ORDER BY 2"
|
||||
FCLTselector("srtdisc",
|
||||
sql,
|
||||
{ initKey: srtdisc,
|
||||
label: L("lcl_vakgroup_type"),
|
||||
trclass:"primsearch noxd",
|
||||
onChange: 'updateDisc("' + urole + '", "' + autfunction + '");',
|
||||
emptyOption: (srtdisc == -1? L("lcl_all") : null), // Als een srtdisc is meegegeven dan geen lege optie,
|
||||
readonly: srtdisc > -1 || disc_key_arr.length != 0
|
||||
})
|
||||
// <!-- Productgroep -->
|
||||
+ " ORDER BY 2";
|
||||
|
||||
var sqlcnt = "SELECT COUNT ( * ) nrsrtdisc"
|
||||
+ " FROM (" + sql + ")";
|
||||
|
||||
var oRs2 = Oracle.Execute(sqlcnt);
|
||||
if (oRs2("nrsrtdisc").Value == 1)
|
||||
{
|
||||
var oRs = Oracle.Execute(sql);
|
||||
srtdisc = oRs("ins_srtdiscipline_key").Value;
|
||||
|
||||
oRs.close();
|
||||
}
|
||||
oRs2.close();
|
||||
|
||||
if (srtdisc == -1)
|
||||
{
|
||||
FCLTselector("srtdisc",
|
||||
sql,
|
||||
{ initKey: srtdisc,
|
||||
label: L("lcl_vakgroup_type"),
|
||||
trclass:"primsearch noxd",
|
||||
onChange: 'updateDisc("' + urole + '", "' + autfunction + '");',
|
||||
emptyOption: (srtdisc == -1? L("lcl_all") : null), // Als een srtdisc is meegegeven dan geen lege optie,
|
||||
readonly: srtdisc > -1 || disc_key_arr.length != 0
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
if (!frontend && srtdisc > -1)
|
||||
{
|
||||
%><input type='hidden' id='srtdisc' name='srtdisc' value='<%=srtdisc%>'><%
|
||||
}
|
||||
|
||||
// <!-- Productgroep -->
|
||||
// LET OP!!
|
||||
// De options van deze selector wordt on-change dynamisch vervangen door ../shared/loadDisc.asp!
|
||||
// Wat hier staat is dus alleen de initiele situatue.
|
||||
// Wat hier staat is dus alleen de initiele situatie.
|
||||
// TODO: als er maar 1 waarde is dan die kiezen; het is zinloos dan Alle/De ene keuze als selectie te bieden, fixed De ene keuze is dan beter (ruimte!)
|
||||
// SQL-queries uit loadDisc:
|
||||
var discsql_aut = "SELECT ins_discipline_key"
|
||||
+ " FROM fac_v_webgebruiker g"
|
||||
@@ -563,7 +602,8 @@ oRs.close();
|
||||
}
|
||||
|
||||
// Meldinggroep
|
||||
// Laat alle meldinggroepen zien die voorkomen onder de disciplines die ik mag zien.
|
||||
// Laat alle meldinggroepen zien die voorkomen onder de disciplines die ik mag zien.
|
||||
if (anymldgroup) {
|
||||
var grpsql_aut = "SELECT ins_discipline_key"
|
||||
+ " FROM fac_v_webgebruiker g"
|
||||
+ ", fac_functie f"
|
||||
@@ -598,7 +638,7 @@ oRs.close();
|
||||
trclass: "secsearch noxd",
|
||||
emptyOption: ""
|
||||
});
|
||||
|
||||
}
|
||||
// Behandelgroep-filter (indien die er zijn)
|
||||
var behsql = "SELECT mld_behandelgroep_key,"
|
||||
+ lcl.xsqla('mld_behandelgroep_naam', 'mld_behandelgroep_key')+", "
|
||||
@@ -752,7 +792,7 @@ oRs.close();
|
||||
<% // Vlag0 heeft dezelfde betekenis als 'geen vlag' en krijgt geen vinkje
|
||||
for (flagkey=1; flagkey < S('mld_melding_flags'); flagkey++)
|
||||
{
|
||||
%><label for="flag<%=flagkey%>" title='<%=safe.htmlattr(L("lcl_mld_flag"+flagkey))%>'><input type="checkbox" name="flag<%=flagkey%>"><img src='../Pictures/mldflag<%=flagkey%>.png'></label>
|
||||
%><label for="flag<%=flagkey%>"><input type="checkbox" name="flag<%=flagkey%>"><img src='../Pictures/mldflag<%=flagkey%>.png'> <%=safe.html(L("lcl_mld_flag"+flagkey))%></label><br>
|
||||
<%
|
||||
} %>
|
||||
</td>
|
||||
@@ -1030,7 +1070,7 @@ oRs.close();
|
||||
initEmpty: true // Altijd lege waarde tonen, ook als er maar 1 waarde is.
|
||||
})
|
||||
}
|
||||
|
||||
if (anyobj) {
|
||||
if (minfo)
|
||||
{
|
||||
//<!-- Objectdiscipline -->
|
||||
@@ -1082,9 +1122,10 @@ oRs.close();
|
||||
updateInsSrtGroup("<%=autfunction%>", "<%=insgroup_key%>", "<%=objsrt_key_arr%>");
|
||||
});
|
||||
</script>
|
||||
<% }
|
||||
<% } // minfo
|
||||
// Object omschrijving
|
||||
RWFIELDTR("objectoms", "fld wildcard", L("lcl_mld_object_oms"), safe.htmlattr(omschr), { trclass: "secsearch", datatype: "text" });
|
||||
RWFIELDTR("objectoms", "fld wildcard", L("lcl_mld_object_oms"), safe.htmlattr(omschr), { trclass: "secsearch", datatype: "text" });
|
||||
} // anyobj
|
||||
} // if (!justClose) 2
|
||||
} // if (!frontend)
|
||||
%>
|
||||
|
||||
Reference in New Issue
Block a user