Files
Facilitor/APPL/CAD/req_move_save.asp
Peter Feij 7ffa83b54c FSN#26947 perslidwerkplek_verwijder en werkplek_verwijder vervallen
svn path=/Website/trunk/; revision=19017
2013-09-06 16:06:54 +00:00

105 lines
3.3 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"-->
<!--#include file="../Shared/json2.js" -->
<%
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 = getQParamInt("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 = getQParamInt("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;
%>