From 00e6853236c134090ec74942a3ccb15e8f49c440 Mon Sep 17 00:00:00 2001 From: Peter Feij Date: Fri, 23 Oct 2009 18:08:02 +0000 Subject: [PATCH] savepoint svn path=/Website/trunk/; revision=29 --- APPL/PRS/prs_bedrijf.asp | 113 ++++++++ APPL/PRS/prs_bedrijf_search.asp | 170 +++++++++++ APPL/PRS/prs_bedrijf_search_list.asp | 59 ++++ APPL/PRS/prs_dienstloc_list.asp | 70 +++++ APPL/PRS/prs_phonebook.asp | 169 +++++++++++ APPL/PRS/prs_phonebook_list.asp | 407 +++++++++++++++++++++++++++ 6 files changed, 988 insertions(+) create mode 100644 APPL/PRS/prs_bedrijf.asp create mode 100644 APPL/PRS/prs_bedrijf_search.asp create mode 100644 APPL/PRS/prs_bedrijf_search_list.asp create mode 100644 APPL/PRS/prs_dienstloc_list.asp create mode 100644 APPL/PRS/prs_phonebook.asp create mode 100644 APPL/PRS/prs_phonebook_list.asp diff --git a/APPL/PRS/prs_bedrijf.asp b/APPL/PRS/prs_bedrijf.asp new file mode 100644 index 0000000000..f43200729c --- /dev/null +++ b/APPL/PRS/prs_bedrijf.asp @@ -0,0 +1,113 @@ +<%@language = "javascript" %> +<%/* + $Revision: 1 $ + $Modtime: 19-10-09 17:47 $ + + File: prs_bedrijf.asp + Status: x% + Description: Muteerscherm voor bedrijven (intern en extern) + dit is de grote 'wrapper' voor de diverse andere schermen + Parameters: urole + bedrijf_key + Context: + Note: + +*/ %> + + + + +<% +FCLTHeader.Requires({plugins:["suggest","jQuery"], + js: ["expand_frame.js", "FCLTMgr.js", "jquery-ui.js"], + css: ["../shared/suggest/suggest.css"]}); // css for childframes}) + + +// AUTORISATIEPARAMETERS + var bedrijf_key = getQParamInt("bedrijf_key", -1); + var intern = getQParam("intern", 0) == "1"; // alleen te gebruiken bij NEW + + if (bedrijf_key > 0) + { + // controleer PRSMAN/RELMAN lees/schrijf autorisaties + var sql = "SELECT prs_bedrijf_intern FROM prs_bedrijf WHERE prs_bedrijf_key=" + bedrijf_key; + oRs = Oracle.Execute(sql); + if ( !oRs.eof ) { + intern = oRs("prs_bedrijf_intern").value == "1"; + } + } + if (intern) + autfunction = "WEB_PRSMAN"; + else + autfunction = "WEB_RELMAN"; + +authparams = user.checkAutorisation(autfunction); +%> + + + +<% + FCLTHeader.Generate(); +%> + + + + +<% +if (bedrijf_key == -1) +{ + var page="prs_edit_bedrijf.asp"; // Maak een nieuw +} +else { + var page="prs_show_bedrijf.asp"; +} +// 1. Het hoofdframe +page += "?bedrijf_key="+bedrijf_key; +IFRAMER("prsFrame", page, { title: "lcl_prs_bedrijf_frame_algemeen", + initHeight: "450px", + FcltClose: "bedrijfClose" } ); + +if ( bedrijf_key > -1 ) { + + // 2. De contactpersonen + page="prs_contactpersoon_list.asp?embedded=1&bedrijf_key="+bedrijf_key; + IFRAMER("prscontactpersonen", page, { refreshOnClose: true, initHide: true } ); + + // 3. De dienstenxlocatie + page="prs_dienstloc_list.asp?embedded=1&bedrijf_key="+bedrijf_key; + IFRAMER("prsdiensten", page, { refreshOnClose: true, initHide: true } ); + +// if (false) { // future extension +// page = "mld_show_note.asp?embedded=1&urole="+urole+"&mld_key="+mld_key+transitParam; +// IFRAMER("noteFrame", page, {refreshOnClose: true, initHide: true } ); +// } + +} +%> + + + diff --git a/APPL/PRS/prs_bedrijf_search.asp b/APPL/PRS/prs_bedrijf_search.asp new file mode 100644 index 0000000000..11fa2f7849 --- /dev/null +++ b/APPL/PRS/prs_bedrijf_search.asp @@ -0,0 +1,170 @@ +<%@language = "javascript" %> +<% /* + $Revision: 1 $ + $Modtime: 23-10-09 18:54 $ + + File: prs_bedrijf_search.asp (formerly companysearch.asp;27) + Status: 80% + + Description: Toont zoekvelden voor lijst van bedrijven + Parameters: {NADER UITWERKEN} + Context: Vanuit menu + Note: De submitbutton kost ruimte. Moet binnen form maar waar is die het legaalst? + +*/ %> + + + + + + +<% +// suggest en jQuery worden door persoonselector.inc, plaatsselector.inc en afdelingselector.inc al als plugin toegevoegd +// plaatsselector.js wordt door plaatsselector.inc als js script toegevoegt +FCLTHeader.Requires({plugins:["jQuery", "kenmerk"], + js: ["expand_frame.js"]}); + +/***** Get webform parameters *****/ + +var loc_key = getQParam("locatie_key", -1); +var intern = getQParam("intern", -1) == 1; +var autosearch = getQParam("autosearch", -1) == 1; + +// optional prefilling params +var pcompanyName = getQParam("pcompanyName", -1); +var pbezoekPostcode = getQParam("pbezoekPostcode", -1); +var pbezoekPlaats = getQParam("pbezoekPlaats", -1); +var pdienst_key = getQParam("pdienst_key", -1); +var pdienst_key = getQParam("pdienst_key", -1); +var pcontactPrs = getQParam("pcontactPrs", -1); + +/***** End get webform parameters *****/ + +// So what authorization must we check? +var autfunction = ""; +if (intern) + autfunction = "WEB_PRSMAN"; // TODO of PRSUSE? +else + autfunction = "WEB_RELMAN"; + +var authparams = user.checkAutorisation(autfunction); + +// VALIDATE AND PREPARE + +var there_is_dienst = false; +var tsql = "SELECT prs_dienst_key FROM prs_dienst"; +var toRs = Oracle.Execute( tsql ); +if ( !toRs.eof ) { there_is_dienst = true; } + + +%> + + + <% FCLTHeader.Generate(); %> + + + + + + +
+ +
+ + + \ No newline at end of file diff --git a/APPL/PRS/prs_bedrijf_search_list.asp b/APPL/PRS/prs_bedrijf_search_list.asp new file mode 100644 index 0000000000..f41eb0843c --- /dev/null +++ b/APPL/PRS/prs_bedrijf_search_list.asp @@ -0,0 +1,59 @@ +<%@language = "javascript" %> +<% /* + $Revision: 1 $ + $Modtime: 19-10-09 16:01 $ + + File: prs_bedrijf_search_list.asp + Description: Vangt de parameters van msg_search op en verwerkt die in een aanroep van msg_list + Parameters: urole + Context: Vanuit prs_bedrijf_search.asp + Note: +*/ %> + +<% Response.Expires = 0; %> + + + + +<% + +var intern = getQParam("intern", -1) == 1; +var autfunction = ""; +if (intern) + autfunction = "WEB_PRSMAN"; // TODO of PRSUSE? +else + autfunction = "WEB_RELMAN"; +var authparams = user.checkAutorisation(autfunction); + +var outputmode = getQParam("outputmode", 0); +var showall = getQParam("showall", false); +var companyName = getQParam("companyName", -1); +var bezoekPostcode = getQParam("bezoekPostcode", -1); +var bezoekPlaats = getQParam("bezoekPlaats", -1); +var contactpersoon = getQParam("contactPrs", -1); +var locatiekey = getQParam("locatiekey", -1); +var dienstkey = getQParam("dienstkey", -1); + + +var leverancier = getQParam("leverancier", -1) == 1; +var uitvoerende = getQParam("uitvoerende", -1) == 1; +var contract = getQParam("contract", -1) == 1; +var huurder = getQParam("huurder", -1) == 1; + +bedrijf_list ( autfunction, + { outputmode: outputmode, + showall: showall, + isIntern: intern, + naam: (companyName != -1 ? companyName : null), + postcode: (bezoekPostcode != -1 ? bezoekPostcode : null), + plaats: (bezoekPlaats != -1 ? bezoekPlaats : null), + contactpersoon: (contactpersoon != -1 ? contactpersoon : null), + locatiekey: (locatiekey != -1 ? locatiekey : null), + dienstkey: (dienstkey != -1 ? dienstkey : null), + isLeverancier : leverancier, + isUitvoerende : uitvoerende, + isContractant: contract, + isHuurder: huurder + } + ); +%> \ No newline at end of file diff --git a/APPL/PRS/prs_dienstloc_list.asp b/APPL/PRS/prs_dienstloc_list.asp new file mode 100644 index 0000000000..e108f51693 --- /dev/null +++ b/APPL/PRS/prs_dienstloc_list.asp @@ -0,0 +1,70 @@ +<%@language="javascript"%> +<% /* + $Revision: 1 $ + $Modtime: 19-10-09 18:18 $ + + File: prs_dienstloc_list.asp + Status: x% + Description: Lijst van geleverde diensten door bedrijf berijf_key en/of op locatie locatie_key + Parameters: locatie_key (optioneel) + bedrijf_key (optioneel) + Context: Submit van prs_dienstloc_search.asp + Note: + +*/ %> + + + +<% +var bedrijf_key = getQParamInt("bedrijf_key", -1); +var locatie_key = getQParamInt("locatie_key", -1); + +FCLTHeader.Requires({plugins:["jQuery"], + js: ["expand_frame.js", "FCLTMgr.js"]}) +%> + + +<% FCLTHeader.Generate(); %> + + + +<% +var autfunction = 'WEB_RELMAN'; +var authparams = user.checkAutorisation(autfunction); + +var sql = "SELECT" + + " b.prs_bedrijf_key" + + ", prs_bedrijf_naam" + + ", prs_dienst_omschrijving" + + ", alg_locatie_omschrijving" + + ", prs_bedrijfdienstlocatie_key" + + " FROM alg_v_aanweziglocatie l, prs_dienst d, prs_bedrijfdienstlocatie dl, prs_bedrijf b" + + " WHERE dl.ALG_LOCATIE_KEY = l.ALG_LOCATIE_KEY(+)" + + " AND d.PRS_DIENST_KEY = dl.PRS_DIENST_KEY" + + " AND dl.PRS_BEDRIJF_KEY = b.PRS_BEDRIJF_KEY" + + (bedrijf_key != -1 ? " AND b.prs_bedrijf_key = " + bedrijf_key : "") + + (locatie_key != -1 ? " AND l.alg_locatie_key = " + locatie_key : "") + + " ORDER BY b.prs_bedrijf_naam_upper, prs_dienst_omschrijving, alg_locatie_upper"; + + + var rst = new ResultsetTable({ sql: sql, + ID: "contacttable", + title: lcl_prs_companies_dienst_title, + keyColumn: "prs_bedrijfdienstlocatie_key" + }); + + if (bedrijf_key == -1) + rst.addColumn(new Column({caption: lcl_prs_companies_name, content: "prs_bedrijf_naam"})); + + rst.addColumn(new Column({caption: lcl_prs_companies_dienst, content: "prs_dienst_omschrijving"})); + + if (locatie_key == -1) + rst.addColumn(new Column({caption: lcl_location, content: "alg_locatie_omschrijving"})); + +// todo: .withHandlerPage("prsdienst.asp"+(intern?"?intern=1":"")); + + rst.processResultset(); + +%> + + diff --git a/APPL/PRS/prs_phonebook.asp b/APPL/PRS/prs_phonebook.asp new file mode 100644 index 0000000000..9b78c3876a --- /dev/null +++ b/APPL/PRS/prs_phonebook.asp @@ -0,0 +1,169 @@ +<%@language = "javascript" %> +<% /* + $Revision: 1 $ + $Modtime: 13-10-09 18:48 $ + + File: prs_phonebook.asp (formerly phone_book.asp;29) + Status: 80% + + Description: Toont frontend zoekvelden voor lijst van personen (telefoongids) + Parameters: {NADER UITWERKEN} + Context: Vanuit menu + Note: + TODO: overdreven checks op parameters verschonen. + default-actie definieren (optioneel personendetails) + mode 4? +*/ %> + + + + + + + +<% +// suggest en jQuery worden door persoonselector.inc, plaatsselector.inc en afdelingselector.inc al als plugin toegevoegd +// plaatsselector.js wordt door plaatsselector.inc als js script toegevoegt +FCLTHeader.Requires({plugins:["jQuery", "kenmerk"], + js: ["expand_frame.js"]}); + +/***** Get webform parameters *****/ + var autfunction = "WEB_PHONEB"; + var authparams = user.checkAutorisation(autfunction); +%> + +<% FCLTHeader.Generate(); %> + + + + + +
+ +
+ + + + diff --git a/APPL/PRS/prs_phonebook_list.asp b/APPL/PRS/prs_phonebook_list.asp new file mode 100644 index 0000000000..1a349ab930 --- /dev/null +++ b/APPL/PRS/prs_phonebook_list.asp @@ -0,0 +1,407 @@ +<%@ language = "JavaScript" %> +<% /* + $Revision: 1 $ + $Modtime: 22-10-09 15:56 $ + + File: prs_phonebook_list.asp (was PhoneSearch.asp;47) + Status: 80% + Description: Toont telefoonboek zoekresultaten + + Parameters: + mode: 1 personen, 2 locaties, 3 bedrijven, 4 usrrap (maar die nooit hier) + xxxxxxx: Diverse filtervelden + + Global settings: + prs_plaats_key: als >-1: gebruik een flexkenmerk (stand)plaats ipv. locatie via werkplek + locphone_kenmerk_key: als >-1 dan heeft locatie een flexkenmerk telefoon + locfax_kenmerk_key: als >-1 dan heeft locatie een flexkenmerk fax + + Context: Workframe van prs_phonebook.asp + Note: MOET MOGELIJK NOG GEBRUIK GAAN MAKEN VAN prs_list.inc etc + TODO: overdreven checks op parameters verschonen. + default-actie definieren (optioneel personendetails) + mode 4? + De oplossing voor meerdere werkplekken -> 1 regel + +*/ %> +<% Response.Expires = -1; %> + + +<% +FCLTHeader.Requires({plugins:["jQuery"], + js: ["expand_frame.js", "wpos.js", "FcltMgr.js"]}); + + var mode = getQParamInt("mode"); + var outputmode = getQParam("outputmode", 0); + var showall = getQParam("showall", 0); + +__Log('mode : '+mode); + +%> + + +<% + FCLTHeader.Generate({ outputmode: outputmode }); + var autfunction = "WEB_PHONEB"; + var authparams = user.checkAutorisation(autfunction); +%> + + + +<% + + name = getQParam("Naam", "").toUpperCase(); + func = getQParamInt('func', -1 ); + locat = getQParamInt('locatiekey', -1); + bld = getQParamInt('gebouwkey', -1); + flr = getQParamInt("verdiepingkey", -1); + tel = ('' + Request.QueryString("Telefoon") ).toUpperCase(); + place = ('' + Request.QueryString("place") ).toUpperCase(); + comp = getQParamInt('bedrijf', -1); + niv1 = getQParamInt('Niv1', -1); + niv2 = getQParamInt('Niv2', -1); + niv3 = getQParamInt('Niv3', -1); + niv4 = getQParamInt('Niv4', -1); + niv5 = getQParamInt('Niv5', -1); + nivwc = getQParam('nivwc', -1); + sql = ""; + + switch (mode) { + + case 1: // Personen zoeken + var RealWP = "(SELECT prs_alg_ruimte_key, ppw.prs_perslid_key, prs_werkplek_virtueel" + + " FROM prs_werkplek pw, prs_v_aanwezigperslidwerkplek ppw" + + " WHERE ppw.prs_werkplek_key = pw.prs_werkplek_key)" + + sql = "SELECT DISTINCT " /// pf: distinct is used here to handle multiple workplaces for authorization only + + "p.prs_perslid_key, " + + prs_pers_string + " Naam," + + prs_dep_string + " Afdeling," + if (prs_plaats_key > -1) + sql += "prs_kenmerklink_waarde Locatie,0 prs_werkplek_virtueel,"; + else + sql += "alg_ruimte_aanduiding Locatie, prs_werkplek_virtueel," + + " w.prs_alg_ruimte_key alg_ruimte_key," // For FGraph + sql +="p.prs_perslid_telefoonnr Telefoonnr," + + "p.prs_perslid_mobiel Mobielnr," + + "p.prs_perslid_email Email"; + + if (prs_photo_kenmerk_key>0 && ph_rowdetails!=1) // Photo via symbooltje + { + sql += ", (select PRS_KENMERKLINK_WAARDE " + + " from PRS_v_aanwezigKENMERKLINK PIC" + + " WHERE PIC.PRS_KENMERK_KEY = " + prs_photo_kenmerk_key + + " AND PIC.PRS_LINK_KEY = P.PRS_PERSLID_KEY) FOTOPUBLIEK"; + } + sql += ", (select prs_afdeling_omschrijving from prs_afdeling" + + " where prs_afdeling_key = d.PRS_AFDELING_PARENTKEY) parentafdeling"; + + sql += ", p.prs_perslid_key prs_perslid_key" + + ", p.prs_perslid_upper" // for sorting only + + " FROM prs_v_aanwezigperslid p" + + ", prs_v_aanwezigafdeling d"; + if (prs_plaats_key > -1) { + sql += ", prs_v_aanwezigkenmerklink plts"; + } + else + { + sql += ", "+RealWP+" w" + + ", alg_v_ruimte_gegevens r" + + ", alg_v_aanweziglocatie l" + } + sql +=", prs_v_afdeling_boom ab" + + ", PRS_BEDRIJF b" + + " WHERE d.prs_afdeling_key(+) = p.prs_afdeling_key" + + " AND d.prs_afdeling_key = ab.prs_afdeling_key" + + " AND d.niveau = ab.niveau " + + " AND d.prs_bedrijf_key=b.prs_bedrijf_key " + + " AND b.prs_bedrijf_ingids = 1 "; + + if (prs_plaats_key > -1) { + sql += " AND plts.prs_kenmerk_key(+) = " + prs_plaats_key; + sql += " AND plts.prs_link_key(+) = p.prs_perslid_key"; + } + else + { + sql +=" AND p.prs_perslid_key = w.prs_perslid_key(+)" + + " AND w.prs_alg_ruimte_key = r.alg_ruimte_key(+)" + + " AND r.alg_locatie_key = l.alg_locatie_key(+)" + } + if ( name != -1 && name != "" ){ + sql += " AND p.prs_perslid_upper LIKE UPPER('" + replace(name,"'","''") + "%')"; + } + + if ( ((func != 0) && (func != "") && (func != -1) && (!isNaN(func)) )) { + sql += " AND p.prs_srtperslid_key = " + func; + } + + if ( tel != "" && tel != 0 && tel !=null && tel != "undefined" && tel != "UNDEFINED" ) + sql += " AND UPPER(p.prs_perslid_telefoonnr) LIKE '"% + tel + "%'"; + + if (prs_plaats_key != -1 && place != "" && place != 0 && place !=null && place != "undefined" && place != "UNDEFINED" ) + sql += " AND UPPER(plts.prs_kenmerklink_waarde) LIKE '%" + place + "%'"; + + if ( locat != -1 ) { + sql += " AND l.alg_locatie_key = " + locat; + } + if ( bld != -1 ) { + sql += " AND r.alg_gebouw_key = " + bld; + } + if ( flr != -1 ) { + sql += " AND r.alg_verdieping_key = " + flr; + } + + // authorization of location/place + if (authparams.ALGreadlevel > -1) { + sql += " AND l.alg_locatie_key IN (SELECT alg_locatie_key FROM fac_v_my_locations" + + " WHERE prs_perslid_key="+user_key+" AND niveau="+authparams.ALGreadlevel+")"; + } + + if ( prs_plaats_key == -1 && place != "" && place != 0 && place !=null && place != "undefined" && place != "UNDEFINED" ) { + sql += " AND UPPER(l.alg_locatie_plaats) LIKE '" + place + "%'"; + } + + if (comp != -1) { + sql += " AND ab.prs_bedrijf_key = " + comp; + } + + if (niv1 != -1) { + sql += " AND ab.prs_afdeling_key1 = " + niv1; + } + + if (niv2 != -1) { + sql += " AND ab.prs_afdeling_key2 = " + niv2; + } + + if (niv3 != -1) { + sql += " AND ab.prs_afdeling_key3 = " + niv3; + } + + if (niv4 != -1) { + sql += " AND ab.prs_afdeling_key4 = " + niv4; + } + + if (niv5 != -1) { + sql += " AND ab.prs_afdeling_key5 = " + niv5; + } + if ( nivwc != -1) { + sql += " AND "+prs_dep_string+" LIKE '%" + nivwc + "%'"; + } + + // authorization of organization + if (authparams.PRSreadlevel==0) { + sql += " AND ab.prs_bedrijf_key = " + "(SELECT prs_bedrijf_key" + + " FROM PRS_V_AANWEZIGPERSLID p, PRS_V_AANWEZIGAFDELING d" + + " WHERE p.PRS_AFDELING_KEY = d.PRS_AFDELING_KEY" + + " AND p.prs_perslid_key = " + user_key + ")"; + } + + if (authparams.PRSreadlevel>prs_max_dep_level) { //No rights + sql += " AND 1=0"; + //sql += " AND ab.prs_afdeling_key" + ((authparams.PRSreadlevel>5)?5:authparams.PRSreadlevel) + " IN (SELECT prs_afdeling_key FROM fac_v_my_prs_afdelingen_read " + // + " WHERE prs_perslid_key = " + user_key + " AND fac_functie_code = 'WEB_PHONEB')"; + } + else { + for(i=1;i<=((authparams.PRSreadlevel>prs_max_dep_level)?prs_max_dep_level:authparams.PRSreadlevel);i++){ + sql += " AND ab.prs_afdeling_key" + i + " IN " + "(SELECT ab.prs_afdeling_key" + i + + " FROM prs_v_afdeling_boom ab, prs_v_aanwezigperslid p" + + " WHERE ab.prs_afdeling_key = p.prs_afdeling_key" + + " AND p.prs_perslid_key = " + user_key + ")"; + } + } + + sql += " AND PRS_PERSLID_UPPER NOT LIKE '[%'"; + sql += " AND PRS_PERSLID_UPPER NOT LIKE 'LEEG [%'"; + sql += " AND PRS_PERSLID_UPPER NOT LIKE '\\_%' ESCAPE '\\'"; // bugfix FSN#16377 + sql += " ORDER BY p.prs_perslid_upper"; + break; + + case 2: // Locaties zoeken + sql = "SELECT l.alg_locatie_key, l.alg_locatie_omschrijving, l.alg_locatie_adres," + + " l.alg_locatie_postcode, alg_locatie_plaats, l.alg_locatie_upper" // for sorting only + + if (locphone_kenmerk_key > -1) { + sql += ",(select alg_onrgoedkenmerk_waarde" + + " from alg_onrgoedkenmerk where alg_kenmerk_key = " + locphone_kenmerk_key + + " AND alg_onrgoedkenmerk_verwijder IS NULL" + + " AND alg_onrgoed_key(+) = l.alg_locatie_key) ph"; + } + if (locfax_kenmerk_key > -1) { + sql += ",(select alg_onrgoedkenmerk_waarde" + + " from alg_onrgoedkenmerk where alg_kenmerk_key = " + locfax_kenmerk_key + + " AND alg_onrgoedkenmerk_verwijder IS NULL" + + " AND alg_onrgoed_key(+) = l.alg_locatie_key) fx"; + } + sql +=" FROM alg_v_aanweziglocatie l"; + + sql += " WHERE 1=1"; + + if ( ((locat != 0) && (locat != "") && (locat != -1) && (!isNaN(locat)) )) { + sql += " AND l.alg_locatie_key = " + locat; + } + + // authorization of location/place + if (authparams.ALGreadlevel > -1) { + sql += " AND l.alg_locatie_key IN (SELECT alg_locatie_key FROM fac_v_my_locations" + + " WHERE prs_perslid_key="+user_key+" AND niveau="+authparams.ALGreadlevel+")"; + } + +// if (place != "" && place != 0 && place !=null && place != "undefined" && place != "UNDEFINED" ) { +// sql += " AND UPPER(l.alg_locatie_plaats) LIKE '" + place + "%'"; +// } + if (name != "" && name != 0 && name !=null && name != "undefined" && name != "UNDEFINED" ) { + sql += " AND UPPER(l.alg_locatie_plaats) LIKE '" + name + "%'"; + } + sql += " ORDER BY l.alg_locatie_upper "; + break; + + case 3: // Bedrijven zoeken + sql = "SELECT prs_bedrijf_key, prs_bedrijf_naam, prs_bedrijf_telefoon, " + + " prs_bedrijf_fax, prs_bedrijf_bezoek_adres, prs_bedrijf_bezoek_plaats, " + + " prs_bedrijf_email Email" + + " FROM prs_bedrijf" + + " WHERE prs_bedrijf_ingids = 1" + + " AND prs_bedrijf_verwijder IS NULL"; + + if ( name != -1 && name != "" ){ + sql += " AND prs_bedrijf_naam_upper LIKE UPPER('" + replace(name,"'","''") + "%')"; + } + if (place != "" && place != 0 && place !=null && place != "undefined" && place != "UNDEFINED" ) { + sql += " AND UPPER(prs_bedrijf_bezoek_plaats) LIKE '" + place + "%'"; + } + + if ( ((comp != 0) && (comp != "") && (comp != -1) && (!isNaN(comp)) )) { + sql += " AND prs_bedrijf_key = " + comp; + } + + sql += " ORDER BY prs_bedrijf_naam_upper"; + break; + + default: + sql = "SELECT 'internal error' FROM DUAL"; +} + +function fnEmail (oRs) { + if ( oRs("Email").Value != null ) + return""+oRs("Email")+""; + else + return ""; +} + +function fnLocatie (oRs) { + if (ph_placeFG==1 && oRs("alg_ruimte_key").Value != null) // Klikbaar FGII TODO: FcltMgr gebruiken + return ""+oRs("locatie")+""; + else + return oRs("locatie").value==null ? "" : Server.HTMLEncode(oRs("locatie")); +} + +function fnPhoto (oRs) { + if (prs_photo_kenmerk_key>0 && ph_rowdetails!=1) + { // Photo link als we geen andere details mogen zien + if ( oRs("fotopubliek").Value=="1") + if (outputmode != 0) + return ''; + else + return ''; + else + return ""; // Geen foto + } +} + + +switch (mode) +{ + case 1: // personen + var rst = new ResultsetTable({ keyColumn: "prs_perslid_key", + sql: sql, + ID: "perslidtable", + outputmode: outputmode, + title: lcl_search_pers, + showAll: showall + }); + +// TODO: deze functionaliteit herstellen +// if (oRs("prs_werkplek_virtueel").value == 1) +// { +// count--; +// oRs.MoveNext(); +// continue; // Deze regel niet tonen/meetellen +// } + rst.addColumn(new Column({caption: lcl_name, content: "Naam" })); + rst.addColumn(new Column({caption: lcl_pb_afdeling, content: "Afdeling" })); + if (ph_showparentafdeling) + rst.addColumn(new Column({caption: lcl_dep_name_level1, content: "parentafdeling" })); + rst.addColumn(new Column({caption: lcl_location, content: fnLocatie })); + rst.addColumn(new Column({caption: lcl_pb_phone, content: "Telefoonnr" })); + rst.addColumn(new Column({caption: lcl_pb_mobile, content: "Mobielnr" })); + rst.addColumn(new Column({caption: lcl_prs_email, content: fnEmail })); + if (prs_photo_kenmerk_key > 0 && ph_rowdetails!=1) + rst.addColumn(new Column({caption: '', content: fnPhoto })); + break; + + case 2: // locaties + var rst = new ResultsetTable({ keyColumn: "alg_locatie_key", + sql: sql, + ID: "loctable", + outputmode: outputmode, + title: lcl_search_org, + showAll: showall + }); + + rst.addColumn(new Column({caption: lcl_location, content: "alg_locatie_omschrijving" })); + if (locphone_kenmerk_key > -1) + rst.addColumn(new Column({caption: lcl_dep_name_level1, content: "ph" })); + if (locfax_kenmerk_key > -1) + rst.addColumn(new Column({caption: lcl_location, content: "fx" })); + rst.addColumn(new Column({caption: lcl_alg_loc_adres, content: "alg_locatie_adres" })); + rst.addColumn(new Column({caption: lcl_alg_loc_postcode, content: "alg_locatie_postcode" })); + rst.addColumn(new Column({caption: lcl_alg_loc_plaats, content: "alg_locatie_plaats" })); + break; + + case 3: // bedrijven + var rst = new ResultsetTable({ keyColumn: "prs_bedrijf_key", + sql: sql, + ID: "bedrijftable", + outputmode: outputmode, + title: lcl_search_bedr, + showAll: showall + }); + + rst.addColumn(new Column({caption: lcl_prs_companies_name, content: "prs_bedrijf_naam" })); + rst.addColumn(new Column({caption: lcl_prs_companies_telefoon, content: "prs_bedrijf_telefoon" })); + rst.addColumn(new Column({caption: lcl_prs_companies_fax, content: "prs_bedrijf_fax" })); + rst.addColumn(new Column({caption: lcl_prs_companies_bezoek_adres, content: "prs_bedrijf_bezoek_adres" })); + rst.addColumn(new Column({caption: lcl_prs_companies_bezoek_plaats, content: "prs_bedrijf_bezoek_plaats" })); + rst.addColumn(new Column({caption: lcl_prs_companies_email, content: fnEmail })); + break; + } + var cnt = rst.processResultset(); + +%> + + +