<%@ language = "JavaScript" %>
<% /*
     $Revision$
     $Id$

    File:        fac_nieuws.asp
    Description: Toont de niet-persoonlijke berichten die relevant zijn voor user
                 Doet dat bv op basis van de geregistreerde plaats van die user.
    Parameters:  pkey optioneel (prs_perslid_key), default is de user_key.
    Context:     Standalone, maar kan prima worden geinclude in een iframe van de portal
    Note:
*/ %>

<!-- #include file="../Shared/common.inc" -->
<%
var pkey = getQParamInt("key", user_key);

// Nieuws berichten die plaats gebonden zijn en die niet plaats gebonden zijn (UNION)
var sqln = "SELECT DISTINCT" // Plaatsgebonden berichten alleen zichtbaar voor medewerkers met een werkplek binnen het plaatsgebonden bericht
          + "      "+lcl.xsqla('fac_nieuws_titel','fac_nieuws_key') + ","
          + "      "+lcl.xsqla('fac_nieuws_omschrijving','fac_nieuws_key') + ","
          + "      fac_nieuws_key"
          + "  FROM   fac_nieuws n, "
          + "         (SELECT   d.alg_regio_key, d.alg_district_key, g.alg_gebouw_key, l.alg_locatie_key"
          + "            FROM   alg_v_onroerendgoed og,"
          + "                   prs_perslidwerkplek pw,"
          + "                   prs_werkplek w,"
          + "                   alg_locatie l,"
          + "                   alg_gebouw g,"
          + "                   alg_district d"
          + "           WHERE   pw.prs_perslid_key = " + pkey
          + "                   AND pw.prs_werkplek_key = w.prs_werkplek_key"
          + "                   AND og.alg_ruimte_key = w.prs_alg_ruimte_key"
          + "                   AND og.alg_gebouw_key = g.alg_gebouw_key"
          + "                   AND g.alg_locatie_key = l.alg_locatie_key"
          + "                   AND l.alg_district_key = d.alg_district_key) pl"
          + " WHERE      ((pl.alg_gebouw_key = n.fac_nieuws_onrgoed_key AND n.fac_nieuws_onrgoed_niveau = 'G')"
          + "         OR (pl.alg_locatie_key = n.fac_nieuws_onrgoed_key AND n.fac_nieuws_onrgoed_niveau = 'L')"
          + "         OR (pl.alg_district_key = n.fac_nieuws_onrgoed_key AND n.fac_nieuws_onrgoed_niveau = 'D')"
          + "         OR (pl.alg_regio_key = n.fac_nieuws_onrgoed_key AND n.fac_nieuws_onrgoed_niveau = 'R'))"
          + " AND (n.fac_nieuws_van IS NULL OR SYSDATE >= n.fac_nieuws_van)"
          + " AND (n.fac_nieuws_tot IS NULL OR SYSDATE < n.fac_nieuws_tot)"
          + " UNION"
          + " SELECT DISTINCT" // Niet plaatsgebonden berichten zichtbaar voor iedereen
          + "    " + lcl.xsqla('fac_nieuws_titel', 'fac_nieuws_key')
          + ",   " + lcl.xsqla('fac_nieuws_omschrijving', 'fac_nieuws_key')
          + ",       fac_nieuws_key"
          + " FROM fac_nieuws n"
          + " WHERE n.fac_nieuws_onrgoed_key IS NULL"
          + " AND (n.fac_nieuws_van IS NULL OR SYSDATE >= n.fac_nieuws_van)"
          + " AND (n.fac_nieuws_tot IS NULL OR SYSDATE < n.fac_nieuws_tot)"
          + " ORDER BY fac_nieuws_key DESC";
%>
<html>
  <head>
<%  FCLTHeader.Generate() %>
  </head>
  <body id="nieuwsbody">
<%  var oRs = Oracle.Execute(sqln);
    var i = 0;
    while (!oRs.eof && i < S("portalmsgmax"))
    { // bewust geen safe.html gebruik hier, sta html toe
%>    <div id="n<%=i%>">
        <div class="nieuwstitel"><%=oRs("fac_nieuws_titel").value%></div>
        <div class="nieuwstekst"><%=oRs("fac_nieuws_omschrijving").value%></div>
      </div>
<%    i++;
      oRs.moveNext();
    }
    oRs.close();
%>
  </body>
</html>
