94 lines
2.8 KiB
JavaScript
94 lines
2.8 KiB
JavaScript
/*
|
|
$Revision$
|
|
$Id$
|
|
|
|
File: bind.js
|
|
Description: Helper functies voor als ins_srtdeel_binding wijzigt
|
|
*/
|
|
|
|
var BIND_RUIMTE = 0x01;
|
|
var BIND_WERKPL = 0x02;
|
|
var BIND_TERREI = 0x04;
|
|
var BIND_AFDELI = 0x08;
|
|
var BIND_PERSOO = 0x10;
|
|
var BIND_INSDEE = 0x20; // Onderdeel
|
|
|
|
function unSelectField(fldId) {
|
|
var elem = document.getElementById(fldId);
|
|
if (elem) elem.selectedIndex = 0;
|
|
}
|
|
function showField(fldId, when) {
|
|
$("#"+fldId).closest("tr").toggle(when!=0);
|
|
}
|
|
|
|
// Afhankelijk van wat een gebruiker gekozen heeft (letter in b) wissen we de key in diverse andere velden
|
|
function setBind(b)
|
|
{
|
|
switch (b)
|
|
{
|
|
case 'R':
|
|
case 'T':
|
|
case 'W':
|
|
{
|
|
if (typeof sgPerson != "undefined") sgPerson.setValue(-1, "");
|
|
if (typeof sDept != "undefined") sDept.setValue(-1, "");
|
|
break;
|
|
}
|
|
|
|
case 'A':
|
|
case 'P':
|
|
{
|
|
if (typeof sgLoc != "undefined")
|
|
{ // Locatie (plaatsselector) is aanwezig
|
|
sgLoc.setValue(-1,"");
|
|
plaatsselector.locChanged(-1);
|
|
}
|
|
if (b=="A")
|
|
{
|
|
if (typeof sgPerson != "undefined") sgPerson.setValue(-1, "");
|
|
}
|
|
else
|
|
{
|
|
if (typeof sDept != "undefined") sDept.setValue(-1, "");
|
|
}
|
|
break;
|
|
}
|
|
|
|
default:
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Bepaal welke velden in het scherm al dan niet zichtbaar (en invulbaar) zijn
|
|
// Dit is alleen interessant bij het toevoegen van INS_DEELen waarbij we nog
|
|
// kunnen wisselen tussen Objectsoorten (en daarmee INS_DEEL_BINDING)
|
|
function checkBind()
|
|
{
|
|
var v_binding = $("#binding").val();
|
|
bindingBits = v_binding; // Globale die we in checkInput controleren
|
|
|
|
// Terrein gebonden of we moeten gebouw kunnen kiezen
|
|
showField("locatie", v_binding & (BIND_TERREI | BIND_RUIMTE | BIND_WERKPL))
|
|
showField("gebouw", v_binding & (BIND_TERREI | BIND_RUIMTE | BIND_WERKPL))
|
|
|
|
// Toegestaan voor ruimte of we moeten werkplek kunnen kiezen
|
|
showField("verdieping", v_binding & (BIND_RUIMTE | BIND_WERKPL))
|
|
showField("ruimte", v_binding & (BIND_RUIMTE | BIND_WERKPL))
|
|
|
|
// Toegestaan voor WERKPLEK?
|
|
showField("werkplek", v_binding & (BIND_WERKPL))
|
|
|
|
// keys echt wissen, anders worden ze mogelijk toch gesubmit als binding 'gekrompen'
|
|
if (!(v_binding & BIND_RUIMTE) && typeof sgBld != "undefined")
|
|
sgBld.setValue(-1, "");
|
|
if (!(v_binding & BIND_WERKPL) && typeof sgWpl != "undefined")
|
|
sgWpl.setValue(-1, "");
|
|
|
|
// Toegestaan voor AFDELING?
|
|
showField("sDept_show", v_binding & (BIND_AFDELI))
|
|
|
|
// Toegestaan voor PERSOON?
|
|
showField("sPerson_show", v_binding & (BIND_PERSOO))
|
|
} |