<% /* $Revision$ $Id$ File: ALG/alg_flexkenmerk.inc Description: Functie die html code genereert voor de presentatie van de flexvelden Parameters: urole Rol van de gebruiker (frontend, frontoffice, backoffice, management info) onrgoed_niveau Onroerendgoed niveua reado Readonly flexcolumns aantal kolommen voor flexkenmerken this_alg { readman, readuse Voor tonen writeman, writeuse } (voor als niet reado) advanced Geadvanceerd Context: Functie wordt aangeroepen door 1) load_kenmerk.asp 2) alg_edit_xxx.asp die initieel serverside deze html code invoegt. Note: */ %> <% function generateFlexKenmerkBlock(params) { if (!params.fnpre) // Mobile geeft die zelf mee { if (params.advanced) // Simpel houden { params.fnpre = function () { Response.Write(''); }; params.fnpost = function () { Response.Write('
'); }; } else { params.fnpre = function () { BLOCK_START("algFlex"+(S("alg_flexcolumns")!=1?"2":""), L("lcl_alg_flexblok")); } params.fnpost = BLOCK_END; } } var onrgoed_key = params.onrgoed_key; // Onroerendgoed key var onrgoed_niveau = params.onrgoed_niveau; // Onroerendgoed niveau var reado = params.reado; // Readonly var flexcolumns = params.flexcolumns? params.flexcolumns : 1; var advanced = params.advanced; // Geavanceerd function isReadonly (volgnummer) { if (reado) return true; if (volgnummer < 100 && !params.this_alg.writeman) return true; if (volgnummer > 100 && !params.this_alg.writeuse) return true; } function isInvisible(volgnummer, ktype) { if (params.multi) return (ktype == 'M' || ktype == 'F' || ktype == 'E'); // onzichtbaar bij multi } var sql = "SELECT k.alg_kenmerk_key kenmerk_key, " + lcl.xsql('k.alg_kenmerk_omschrijving', 'k.alg_kenmerk_key') +" kenmerk_omschrijving, " + " k.alg_kenmerk_kenmerktype kenmerk_kenmerktype, " + " k.fac_kenmerkdomein_key kenmerkdomein_key, " + " k.alg_kenmerk_lengte kenmerk_lengte, " + " k.alg_kenmerk_dec kenmerk_dec, " + " k.alg_kenmerk_nmin kenmerk_nmin, " + " k.alg_kenmerk_nmax kenmerk_nmax, " + (onrgoed_key > 0 ? " (SELECT v.alg_onrgoedkenmerk_waarde " + " FROM alg_onrgoedkenmerk v " + " WHERE v.alg_onrgoed_key = " + onrgoed_key + " AND v.alg_onrgoed_niveau = " + safe.quoted_sql(onrgoed_niveau) + " AND v.alg_kenmerk_key = k.alg_kenmerk_key" + " AND v.alg_onrgoedkenmerk_verwijder IS NULL)" : lcl.xsql('k.alg_kenmerk_default', 'k.alg_kenmerk_key') ) + " kenmerk_waarde, " + " k.alg_kenmerk_volgnr kenmerk_volgnr, " + lcl.xsql('k.alg_kenmerk_dimensie', 'k.alg_kenmerk_key') +" kenmerk_dimensie, " + lcl.xsql('k.alg_kenmerk_hint', 'k.alg_kenmerk_key') +" kenmerk_hint, " + lcl.xsql('k.alg_kenmerk_default', 'k.alg_kenmerk_key') +" kenmerk_default, " + " k.alg_kenmerk_verplicht kenmerk_verplicht, " + " k.alg_kenmerk_groep kenmerk_groep, " + " NULL otherpath, " + " k.alg_kenmerk_toonbaar kenmerk_toonbaar," + " k.alg_kenmerk_uniek kenmerk_uniek," + " k.alg_kenmerk_regexp kenmerk_regexp" + " FROM alg_kenmerk k " + " WHERE k.alg_kenmerk_niveau = " + safe.quoted_sql(onrgoed_niveau) + " AND k.alg_kenmerk_verwijder IS NULL " + (!params.this_alg.readman? " AND alg_kenmerk_volgnr >= 100":"") + (!params.this_alg.readuse? " AND alg_kenmerk_volgnr <= 100":"") + "ORDER BY k.alg_kenmerk_volgnr, " + lcl.xsql('k.alg_kenmerk_omschrijving', 'k.alg_kenmerk_key'); var trn = 0; listKenmerk(sql, "ALG", //module onrgoed_key, { flexcolumns: (!advanced ? flexcolumns : 1), // advanced is een popup. Dan passen twee kolommen slecht kenmerk_search: advanced, fnIsReadonly: isReadonly, hideVervallen: onrgoed_key<0, fnpre: params.fnpre, fnpost: params.fnpost, fnIsInvisible: isInvisible, mobile: params.mobile, parentKey: onrgoed_key, kenmerk_module: onrgoed_niveau } ); } %>