171 lines
6.3 KiB
Plaintext
171 lines
6.3 KiB
Plaintext
<%@ language="javascript"%>
|
|
<% /*
|
|
$Revision$
|
|
$Id$
|
|
|
|
File: CAD/req_move.asp
|
|
Description: Verplaats een prs_perslidwerkplek
|
|
Biedt een werkplek met voldoende ruimte aan of
|
|
laat huidige werkplek meenemen.
|
|
We genereren geen nieuwe werkplekken, hooguit een nieuw volgnummer!
|
|
Parameters: prswp_key: de huidige prs_perslidwerkplek_key
|
|
room_key: alg_ruimte_key waarop gedropt of W:prs_werkplek_key
|
|
Context: Modal na droppen van een prs_perslid op de tekening
|
|
Result: true als daadwerkelijk iets verplaats (dan moet je waarschijnlijk
|
|
ergens beeld refreshen)
|
|
Note:
|
|
|
|
*/ %>
|
|
<!--#include file="../Shared/common.inc"-->
|
|
<!--#include file="../Shared/WPFunctions.inc" -->
|
|
<!--#include file="../Shared/iface.inc" -->
|
|
<!--#include file="FGII.inc"-->
|
|
<html>
|
|
<head>
|
|
<%
|
|
FCLTHeader.Generate();
|
|
var autfunction = "WEB_PRSBOF";
|
|
var authparams = user.checkAutorisation(autfunction);
|
|
|
|
var oRs,i;
|
|
var sql="";
|
|
i=0;
|
|
|
|
var prswp_key = getQParamInt("prswp_key"); // perslidwerkplek_key
|
|
var roomkey_str = getQParam("room_key"); // Nieuwe ruimte, kan ook W:12344 bevatten voor werkplek of R:12345 voor ruimte
|
|
|
|
if (roomkey_str.match(/^W:/)) // Op werkplek gedropt
|
|
{
|
|
var wp_key = parseInt(roomkey_str.substring(2), 10);
|
|
sql = "UPDATE PRS_PERSLIDWERKPLEK"
|
|
+ " SET PRS_WERKPLEK_KEY = " + wp_key
|
|
+ " WHERE PRS_PERSLIDWERKPLEK_KEY = " + prswp_key;
|
|
Oracle.Execute(sql);
|
|
%><script type="text/javascript">FcltMgr.closeDetail(window);</script><%
|
|
Response.End;
|
|
}
|
|
|
|
var room_key = -1;
|
|
if (roomkey_str.split(":").length > 1)
|
|
{
|
|
room_key = parseInt(roomkey_str.substr(2), 10); // room_key moet nu echt een integer zijn.
|
|
}
|
|
else
|
|
{
|
|
room_key = parseInt(roomkey_str, 10);
|
|
}
|
|
var TransitParams = "prswp_key="+prswp_key+"&room_key="+room_key;
|
|
|
|
if (authparams.ALGwritelevel > -1)
|
|
{
|
|
var sql = "SELECT alg_ruimte_key FROM fac_v_my_rooms"
|
|
+ " WHERE prs_perslid_key=" + user_key
|
|
+ " AND alg_ruimte_key = " + room_key
|
|
+ " AND niveau="+authparams.ALGwritelevel;
|
|
oRs = Oracle.Execute(sql);
|
|
user.auth_required_or_abort(!oRs.Eof);
|
|
oRs.Close();
|
|
}
|
|
|
|
// Let op: alg_ruimte zoeken we met de doel-ruimte, niet herkomst. Beetje lui...
|
|
var sql = "SELECT " + S("prs_pers_string") + " naam, ar.alg_ruimte_nr,"
|
|
+ " prs_perslidwerkplek_bezetting, prs_werkplek_omschrijving, "
|
|
+ " pwp.prs_werkplek_key"
|
|
+ " FROM prs_perslid p, prs_perslidwerkplek pwp, "
|
|
+ " prs_werkplek pw, alg_ruimte ar"
|
|
+ " WHERE p.prs_perslid_key = pwp.prs_perslid_key"
|
|
+ " AND pwp.prs_werkplek_key = pw.prs_werkplek_key"
|
|
+ " AND ar.alg_ruimte_key = " + room_key
|
|
+ " AND pwp.prs_perslidwerkplek_key = " + prswp_key
|
|
|
|
oRs = Oracle.Execute(sql);
|
|
var bez = oRs("prs_perslidwerkplek_bezetting").Value;
|
|
var orgwp_key = oRs("prs_werkplek_key").Value;
|
|
|
|
%>
|
|
<script type="text/javascript">
|
|
function movePWPToWP( wp_key )
|
|
{
|
|
var data = { prswp_key : <%=prswp_key%>
|
|
, room_key : -1
|
|
, prs_key : -1
|
|
, wp_key : wp_key
|
|
, domove : "movepwp"
|
|
};
|
|
<% protectRequest.dataToken("data"); %>
|
|
$.post("req_move_save.asp",
|
|
data,
|
|
FcltCallbackClose,
|
|
"json");
|
|
}
|
|
function moveWPtoRoom( )
|
|
{
|
|
var data = { prswp_key : -1
|
|
, room_key : <%=room_key%>
|
|
, prs_key : -1
|
|
, wp_key : <%=orgwp_key%>
|
|
, domove : "movewp"
|
|
};
|
|
<% protectRequest.dataToken("data"); %>
|
|
$.post("req_move_save.asp",
|
|
data,
|
|
FcltCallbackClose,
|
|
"json");
|
|
}
|
|
</script>
|
|
</head>
|
|
|
|
<body class="modal" id="mod_req_move">
|
|
<% MODAL_START();
|
|
MODAL_BLOCK_START("req_move", L("lcl_workplace"), { icon: "fa-briefcase" });
|
|
%>
|
|
<tr><td class='label'><label><%=L("lcl_fg_domove")%></label></td><td><%=safe.html(oRs("naam").Value)%></td></tr>
|
|
<tr><td class='label'><label><%=L("lcl_fg_domovedest")%></label></td><td><%=safe.html(oRs("alg_ruimte_nr").Value)%></td></tr>
|
|
<% if (0) { /* Functionaliteit niet 100% uitgekristaliseerd dus uitschakelen */ %>
|
|
<tr><td>Laat de gebruiker zijn eigen werkplek <b><%=oRs("prs_werkplek_omschrijving").Value%> (<%=bez%>%)</b> <input type=button onClick="moveWPtoRoom()" value='meenemen'></td></tr>
|
|
<% } %>
|
|
<% MODAL_BLOCK_END();
|
|
var sql = "SELECT pw.prs_werkplek_key, prs_werkplek_omschrijving, "
|
|
+ " SUM(NVL(prs_perslidwerkplek_bezetting,0)) bezet"
|
|
+ " FROM prs_perslidwerkplek pwp, prs_werkplek pw"
|
|
+ " WHERE pw.prs_werkplek_key = pwp.prs_werkplek_key(+)"
|
|
+ " AND pw.prs_alg_ruimte_key = " + room_key
|
|
+ " GROUP BY pw.prs_werkplek_key, prs_werkplek_omschrijving";
|
|
oRs = Oracle.Execute(sql);
|
|
%>
|
|
|
|
<form name="u2" method="post">
|
|
<% MODAL_BLOCK_START("req_move", L("lcl_overview_list"), { icon: "fa-list" }); %>
|
|
<THEAD>
|
|
<tr>
|
|
<th><%=L("lcl_workplace")%></th>
|
|
<th><%=L("lcl_occupation_perc")%></th>
|
|
</tr>
|
|
</THEAD>
|
|
<%
|
|
var count=0;
|
|
while( !oRs.eof) {
|
|
count++;
|
|
var action="movePWPToWP(" + oRs("prs_werkplek_key").Value + ")"
|
|
%>
|
|
|
|
<tr id='row<%=count%>' onclick='javascript:<%=action%>' >
|
|
<TD VAlign=top class="selectable" ><%=safe.html(oRs("prs_werkplek_omschrijving").Value)%></TD>
|
|
<TD VAlign=top class="selectable" ><%=oRs("bezet").Value%></TD>
|
|
</tr>
|
|
<%
|
|
oRs.MoveNext();
|
|
}
|
|
oRs.close();
|
|
|
|
MODAL_BLOCK_END();
|
|
SIMPLE_BLOCK_START();
|
|
CreateButtons([ { title: L("lcl_cancel"), action: "FcltMgr.closeDetail(window, { cancel: true } )", icon: "fa-fclt-cancel"} ]);
|
|
SIMPLE_BLOCK_END();
|
|
%>
|
|
</form>
|
|
<% MODAL_END(); %>
|
|
</body>
|
|
</html>
|
|
<% ASPPAGE_END(); %>
|