--
-- $Id$
--
-- Script containing customer specific db-configuration for PLATO

DEFINE thisfile = 'PLAT_NEN2767_INI.SQL'
DEFINE dbuser   = '^(PLAT|WO)'

SET ECHO ON
SET DEFINE ON
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
WHENEVER SQLERROR EXIT;
SELECT adm.scriptspoolfile('&dbuser', '&thisfile') AS fcltlogfile FROM DUAL;
WHENEVER SQLERROR CONTINUE;
SPOOL &fcltlogfile
SET DEFINE OFF

------ payload begin ------



--PLAT#39732: Conditiemeting NEN2767

--PLAT#53939: Conditienorm is (nog) niet te onderhouden
-- ins_score_enabled zetten, oftewel Is conditie meting aanwezig {0 | 1}
UPDATE fac_setting SET fac_setting_pvalue = '1' where fac_setting_name = 'ins_score_enabled';

--PLAT#55737: object string bij het selecteren van objecten bij meldingen
UPDATE fac_setting SET fac_setting_pvalue = 'dis.ins_discipline_omschrijving || ''-'' || g.ins_srtgroep_omschrijving || ''-'' || s.ins_srtdeel_omschrijving || '' '' || d.ins_deel_opmerking' where fac_setting_name = 'ins_element_description';

--PLAT#55873: recent gewijzigd op een week (10080 minuten)
UPDATE fac_setting SET fac_setting_pvalue = '10080' where fac_setting_name = 'mld_melding_recent';

--Enkele menutaken voor op mibile (PDA)
INSERT INTO fac_menu (fac_menu_volgnr, fac_menu_altlabel, fac_menu_alturl, fac_menu_altgroep, fac_menu_image)
SELECT 5, 'Kies cluster', 'appl/pda/setlocation.asp', 3 , 'fa-map-marker' FROM DUAL;
INSERT INTO fac_menu (fac_menu_volgnr, fac_menu_altlabel, fac_menu_alturl, fac_menu_altgroep, fac_menu_image, fac_functie_key)
SELECT 10, 'Elementen', 'appl/pda/ins_list.asp', 3 , 'fa-sitemap', f.fac_functie_key
FROM fac_functie f WHERE f.fac_functie_code = 'WEB_INSUSE';
INSERT INTO fac_menu (fac_menu_volgnr, fac_menu_altlabel, fac_menu_alturl, fac_menu_altgroep, fac_menu_image, fac_functie_key)
SELECT 10, 'NEN2767 Conditiemeting', 'appl/pda/melding.asp', 3 , 'fa-thermometer-half', f.fac_functie_key
FROM fac_functie f WHERE f.fac_functie_code = 'WEB_MLDUSE';

-- Ook menutaken voor op tablet (en desktop).
INSERT INTO fac_menu (fac_menu_volgnr, fac_menu_altgroep, fac_menu_image, fac_menu_level, fac_menu_portal, fac_menu_altlabel)
SELECT 1060, 1, 'mjob_NEN2767.png', 1, 1, 'Conditiemeting' FROM DUAL;
INSERT INTO fac_menu (fac_menu_volgnr, fac_menu_altgroep, fac_menu_portal, fac_menu_altlabel, fac_menu_alturl, fac_functie_key)
SELECT 1065, 1, 1, 'Nieuw gebrek', 'appl/mld/mld_melding.asp?urole=fe', fac_functie_key FROM fac_functie f WHERE f.fac_functie_code = 'WEB_MLDUSE';
INSERT INTO fac_menu (fac_menu_volgnr, fac_menu_altgroep, fac_menu_portal, fac_menu_altlabel, fac_menu_alturl, fac_functie_key)
SELECT 1070, 1, 1, 'Geen gebrek', 'appl/mld/mld_melding.asp?urole=fe' || '&' || 'mld_key=-1' || '&' || 'mld_defaultstdmelding=9999' || '&' || 'disc=999' || '&' || 'srtdisc=1', fac_functie_key FROM fac_functie f WHERE f.fac_functie_code = 'WEB_MLDUSE';
-- INSERT INTO fac_menu (fac_menu_volgnr, fac_menu_altgroep, fac_menu_portal, fac_menu_altlabel, fac_menu_alturl, fac_functie_key)
-- SELECT 1090, 1, 1, 'Overzicht gebreken', 'appl/mld/mld_search.asp?urole=mi', fac_functie_key FROM fac_functie f WHERE f.fac_functie_code = 'WEB_MLDBAC';
INSERT INTO fac_menu (fac_menu_volgnr, fac_menu_altgroep, fac_menu_portal, fac_menu_altlabel, fac_menu_alturl, fac_functie_key)
SELECT 1091, 1, 1, 'Overzicht gebreken', 'appl/fac/fac_report.asp?usrrap_key=81', fac_functie_key FROM fac_functie f WHERE f.fac_functie_code = 'WEB_MLDUSE';



-- Meldingtype terminologie (gebrek ipv melding etc) doen we niet op meldingtype, maar we kiezen voor globaal nivo.
-- Zit namelijk niet alleen in melding scherm, maar ook wel in b.v. het objectenscherm, het frame meldingen  wordt daar niet vertaald.
-- Rename van objecten
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gebreknr' WHERE fac_locale_xsl_label = 'lcl_call_number' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gebrek' WHERE fac_locale_xsl_label = 'lcl_complain' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Inspecteur' WHERE fac_locale_xsl_label = 'lcl_caller' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gebrekenlijst' WHERE fac_locale_xsl_label = 'lcl_mld_vakgroep' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gebrek' WHERE fac_locale_xsl_label = 'lcl_mld_complain' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gebrekgegevens' WHERE fac_locale_xsl_label = 'lcl_mld_frame_algemeen' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gebrek is afgemeld' WHERE fac_locale_xsl_label = 'lcl_mld_is_mldafm' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Selecteer gerelateerde elementen' WHERE fac_locale_xsl_label = 'lcl_mld_objects_select' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Soortgelijke gebreken' WHERE fac_locale_xsl_label = 'lcl_mld_similarcalls' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Status' WHERE fac_locale_xsl_label = 'lcl_mld_mldstatus' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Elementen' WHERE fac_locale_xsl_label = 'lcl_mld_objects' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gegevens van inspecteur' WHERE fac_locale_xsl_label = 'lcl_mld_aanvragergegevens' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gebrek is afgewezen' WHERE fac_locale_xsl_label = 'lcl_mld_is_mldrej' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gebrek is gewijzigd' WHERE fac_locale_xsl_label = 'lcl_mld_is_mldupd' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gebrek kenmerken' WHERE fac_locale_xsl_label = 'lcl_mld_kenmerken' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Selecteer een categorie...' WHERE fac_locale_xsl_label = 'lcl_select_vakgroep' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gebrekenlijst' WHERE fac_locale_xsl_label = 'lcl_vakgroup' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Status' WHERE fac_locale_xsl_label = 'lcl_mld_statusfilters' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gebreken' WHERE fac_locale_xsl_label = 'lcl_complains' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gebrek is geregistreerd' WHERE fac_locale_xsl_label = 'lcl_mld_is_mldnew' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Selecteer een gebrek ...' WHERE fac_locale_xsl_label = 'lcl_select_stdmelding' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gekozen elementen' WHERE fac_locale_xsl_label = 'lcl_mld_objects_selected' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gekoppelde gebreken tonen' WHERE fac_locale_xsl_label = 'lcl_mld_showlinked' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Registreer een gebrek' WHERE fac_locale_xsl_label = 'lcl_do_amelding_hint' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';



-- Setting Mobile aanzetten
UPDATE fac_setting SET fac_setting_pvalue = '1' where fac_setting_name = 'mobile_enabled';
-- Enkele vertalingen op mobile
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Plato Mobiel' WHERE fac_locale_xsl_label = 'lcl_mobile_title' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Elementen' WHERE fac_locale_xsl_label = 'lcl_mobile_objecten' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Gebrek toevoegen' WHERE fac_locale_xsl_label = 'lcl_mld_addmld' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Nieuw gebrek' WHERE fac_locale_xsl_label = 'lcl_mobile_newmelding' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Cluster' WHERE fac_locale_xsl_label = 'lcl_mobile_setlocation' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Zoek cluster met GPS' WHERE fac_locale_xsl_label = 'lcl_mobile_currentgps' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Kies een gebrek' WHERE fac_locale_xsl_label = 'lcl_mobile_selectmelding' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';
UPDATE fac_locale_xsl SET fac_locale_xsl_cust = 'Kies een gebrek' WHERE fac_locale_xsl_label = 'lcl_mobile_selectmeldingtype' AND fac_locale_xsl_lang = 'NL' AND fac_locale_xsl_module = 'ASP';

-- overzicht gebreken
CREATE OR REPLACE VIEW plat_v_rap_conditiemetingen (x) AS SELECT 'x' FROM DUAL;
INSERT INTO fac_usrrap (fac_usrrap_omschrijving,
                        fac_usrrap_view_name,
                        fac_usrrap_functie,
                        fac_usrrap_info,
                        fac_usrrap_count,
                        fac_usrrap_ratio,
                        fac_usrrap_pivot,
                        fac_usrrap_graph,
                        fac_usrrap_cond,
                        fac_functie_key,
                        fac_usrrap_graph_type)
   SELECT 'Overzicht gebreken',
          'plat_v_rap_conditiemetingen',
          0,
          'Overzicht gebreken',
          0,
          0,
          0,
          0,
          0,
          f.fac_functie_key,
          0
     FROM fac_functie f
    WHERE f.fac_functie_code = 'WEB_MLDUSE';

------ ** START ** NEN 2767 CORE IMPLEMENTATION   ------
-- Wordt niet meer gebruikt (moet via standaard)
-- @plat_nen2767_ini_core.sql
------ **  END  ** NEN 2767 CORE IMPLEMENTATION   ------


-- Export functie waarmee elke xx minuten de nen-2767 conditiescore wordt berekend...
INSERT INTO fac_export_app (fac_export_app_code, fac_export_app_oms, fac_export_app_folder, fac_functie_key, fac_export_app_prefix)
SELECT 'NEN2767_COND_SCORE', 'Berekening van de NEN2767 Conditiescore', './NEN2767', fac_functie_key, 'PLAT'
FROM fac_functie
WHERE  fac_functie_code = 'WEB_PRSSYS';

-- Export functie waarmee elke xx minuten de nen-2767 GEAGGREGEERDE conditiescore wordt berekend OP complex / clusternivo
INSERT INTO fac_export_app (fac_export_app_code, fac_export_app_oms, fac_export_app_folder, fac_functie_key, fac_export_app_prefix)
SELECT 'NEN2767_AGGR_SCORE', 'Berekening van de geaggregeerde NEN2767 Conditiescore', './NEN2767', fac_functie_key, 'PLAT'
FROM fac_functie
WHERE  fac_functie_code = 'WEB_PRSSYS';





-- Autorisatie-groepen voor 'NEN2727' met alleen leesrechten
INSERT INTO fac_groep(fac_groep_omschrijving) VALUES('NEN2767-R: Leesrechten');
-- Nu nog de autorisatiegroep 'NEN2727' met schrijfrechten
INSERT INTO fac_groep(fac_groep_omschrijving) VALUES('NEN2767-W: Schrijfrechten');
-- Nu nog de autorisatiegroep 'NEN2727' met ADMINrechten
INSERT INTO fac_groep(fac_groep_omschrijving) VALUES('NEN2767-A: Administrator');


-- En dan nu de rechten uitdelen aan de 3 bovengenoemde autorisatiegroepen....


-- NEN2767-R: Leesrechten
INSERT INTO fac_groeprechten (fac_groep_key, fac_functie_key, ins_discipline_key,
					  fac_gebruiker_prs_level_read, fac_gebruiker_prs_level_write, fac_gebruiker_alg_level_read, fac_gebruiker_alg_level_write)
		SELECT
		(SELECT fac_groep_key FROM fac_groep WHERE fac_groep_upper = 'NEN2767-R: LEESRECHTEN'),
		fac_functie_key,
		d.ins_discipline_key,
		-1, -1, -1, -1
		FROM fac_functie, mld_discipline d
		WHERE fac_functie_code = 'WEB_MLDBAC'
		AND d.ins_discipline_verwijder IS NULL
		AND d.ins_srtdiscipline_key = 1;


-- NEN2767-W: Schrijfrechten
INSERT INTO fac_groeprechten (fac_groep_key, fac_functie_key, ins_discipline_key,
					  fac_gebruiker_prs_level_read, fac_gebruiker_prs_level_write, fac_gebruiker_alg_level_read, fac_gebruiker_alg_level_write)
		SELECT
		(SELECT fac_groep_key FROM fac_groep WHERE fac_groep_upper = 'NEN2767-W: SCHRIJFRECHTEN'),
		fac_functie_key,
		d.ins_discipline_key,
		-1, -1, -1, -1
		FROM fac_functie, mld_discipline d
		WHERE fac_functie_code = 'WEB_MLDUSE'
		AND d.ins_discipline_verwijder IS NULL
		AND d.ins_srtdiscipline_key = 1;

------ payload end   ------

SET DEFINE OFF
BEGIN adm.systrackscriptId ('$Id$', 0); END;
/

COMMIT;
SET ECHO OFF
SPOOL OFF
SET DEFINE ON
PROMPT Logfile of this upgrade is: &fcltlogfile