105 lines
3.2 KiB
Plaintext
105 lines
3.2 KiB
Plaintext
<%@ language="javascript"%>
|
|
<% /*
|
|
$Revision$
|
|
$Id$
|
|
|
|
File: CAD/req_move_save.asp
|
|
Description: Verplaats een prs_werkplek naar een andere ruimte.
|
|
Wordt aangeroepen door req_move2.pas en req_move3.pas.
|
|
Parameters: prswp_key: de huidige prs_werkplek_key
|
|
room_key: alg_ruimte_key waarop gedropt
|
|
Note:
|
|
*/ %>
|
|
|
|
<%
|
|
var JSON_Result = true;
|
|
%>
|
|
|
|
<!--#include file="../Shared/common.inc"-->
|
|
<!--#include file="../Shared/WPFunctions.inc"-->
|
|
|
|
<%
|
|
protectRequest.validateToken();
|
|
/***** Get webform parameters *****/
|
|
var prswp_key = getFParamInt("prswp_key");
|
|
var room_key = getFParamInt("room_key");
|
|
var prs_key = getFParamInt("prs_key");
|
|
var wp_key = getFParamInt("wp_key");
|
|
var domove = getFParam("domove");
|
|
/***** End get webform parameters *****/
|
|
|
|
function moveWP(roomkey, wpkey) // Werkplek verplaatsen?
|
|
{
|
|
var wp_key = getFParamInt("wp_key");
|
|
sql = "UPDATE prs_werkplek"
|
|
+ " SET prs_alg_ruimte_key = " + roomkey
|
|
+ " WHERE prs_werkplek_key = " + wpkey;
|
|
try
|
|
{
|
|
Oracle.Execute(sql);
|
|
}
|
|
catch (e) // Neem aan dat volgnummer niet goed was, anders snappen we het niet
|
|
{
|
|
sql = "SELECT MIN (prs_werkplek_volgnr + 1) "
|
|
+ " FROM prs_werkplek pw "
|
|
+ " WHERE prs_alg_ruimte_key = " + roomkey
|
|
+ " AND NOT EXISTS ( "
|
|
+ " SELECT * "
|
|
+ " FROM prs_werkplek pw2 "
|
|
+ " WHERE prs_alg_ruimte_key = " + roomkey
|
|
+ " AND pw2.prs_werkplek_volgnr = pw.prs_werkplek_volgnr + 1)"
|
|
oRs = Oracle.Execute(sql);
|
|
var nextvolg = oRs(0).value;
|
|
sql = "UPDATE prs_werkplek"
|
|
+ " SET prs_alg_ruimte_key = " + roomkey
|
|
+ " ,prs_werkplek_volgnr = " + nextvolg
|
|
+ " WHERE prs_werkplek_key = " + wpkey;
|
|
oRs = Oracle.Execute(sql);
|
|
}
|
|
}
|
|
|
|
function movePWP(wpkey, prswpkey) // Perslidwerkplek verplaatsen?
|
|
{ // We hebben alleen werkplekken aangeboden met voldoende ruimte dus dat
|
|
// hoeven we niet meer te controleren
|
|
var wp_key = getFParamInt("wp_key");
|
|
sql = "UPDATE prs_perslidwerkplek"
|
|
+ " SET prs_werkplek_key = " + wpkey
|
|
+ " WHERE prs_perslidwerkplek_key = " + prswpkey;
|
|
Oracle.Execute(sql);
|
|
}
|
|
|
|
var message = "";
|
|
var autfunction = "WEB_PRSBOF";
|
|
var authparams = user.checkAutorisation(autfunction);
|
|
|
|
// Mag ik schijven in de doelruimte?
|
|
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();
|
|
}
|
|
|
|
switch (domove)
|
|
{
|
|
case "movewpr": WPMove_PRS_PERSLIDWERKPLEK(prswp_key, room_key);
|
|
break;
|
|
case "placewp": WPPlace_PRS_PERSLID(prs_key, room_key);
|
|
break;
|
|
case "movewp": moveWP(room_key, wp_key);
|
|
break;
|
|
case "movepwp": movePWP(wp_key, prswp_key);
|
|
break;
|
|
}
|
|
|
|
var result = {message: message, success: true };
|
|
Response.Write(JSON.stringify(result));
|
|
Response.End;
|
|
%>
|
|
<% ASPPAGE_END(); %>
|