ASDL#37188 Logboek NS: Mogelijkheid om meerdere foto's tergelijk opsturen

svn path=/Website/trunk/; revision=30611
This commit is contained in:
Erik Groener
2016-09-07 11:31:36 +00:00
parent ccd96010a9
commit 0acf49c437

View File

@@ -37,11 +37,12 @@ var pKenmerk_key = getQParamInt("kenmerk_key", -1);
var pAlgLevel = getQParam("kenmerk_module", "");
var params = flexProps(pModule, pKey, String(pKenmerk_key), pNiveau, {alglevel: pAlgLevel});
var doEncrypt = (params.encrypt? 1 : 0);
var regFilter = null;
if (params.extFilter)
{
// extFilter="pdf,tiff" of "pdf tiff" of "pdf;tiff"
var regFilter = params.extFilter;
regFilter = params.extFilter;
regFilter = regFilter.replace(/( |,|;)/g,"|"); // Altijd | karakter
regFilter = ".*\\." + "(" + regFilter + ")$"; // er moet een punt voor en extensie is aan het einde
}
@@ -63,12 +64,31 @@ function jslog(str) // VB Vindt de twee underscores niet leuk
function js_add_file(name, data, contenttype)
{
found_files.push({ name: name, data: data, contenttype: contenttype});
found_files.push({ name: name, data: data, contenttype: contenttype});
}
function js_add_field(name, data)
{
found_fields[name] = data;
found_fields[name] = data;
}
function check_filename(pinfo)
{
var filename = safe.filename(pinfo.name);
var msg = "";
if (filename == "" || pinfo.data == "")
{
msg = "Empty file or name?";
}
else if (regFilter && (!new RegExp(regFilter, "ig").test(filename)))
{
msg = L("lcl_shared_file_ext_invalid_start") + params.extFilter + L("lcl_shared_file_ext_invalid_end");
}
else if (!new RegExp(S("flexAllowedExt"), "ig").test(filename))
{
msg = L("lcl_shared_file_ext_not_allowed");
}
return " (" + filename +": " + msg + ")";
}
var VB_result = VB_getfiles();
@@ -85,46 +105,62 @@ function jslog(str) // VB Vindt de twee underscores niet leuk
// Je krijgt daar dan 'Illegal Assignment', ik verzin het niet
for (var j = 0; j < found_files.length; j++)
{
var finfo = found_files[j];
var safefilename = safe.filename(finfo.name);
result.safefilename.push(safefilename);
var BinaryStream = Server.CreateObject("ADODB.Stream");
BinaryStream.Type = 1; // adTypeBinary
BinaryStream.Open();
try
{
BinaryStream.Write(finfo.data);
// Save binary data To disk
__Log("Saving to: " + params.AttachPath + safefilename);
CreateFullPath(params.AttachPath);
BinaryStream.SaveToFile(params.AttachPath + safefilename, 2); // adSaveCreateOverWrite
}
catch(e)
{
HELP;
}
var finfo = found_files[j];
var safefilename = safe.filename(finfo.name);
var msg = check_filename(finfo);
if (msg == "")
{
result.safefilename.push(safefilename);
if (doEncrypt) // Wordt (nog) niet gebruikt.
{
var oZip = Server.CreateObject("SLNKDWF.Zip");
oZip.Open(fullpath + safefilename + ".encrypted");
oZip.EncryptFromString(safefilename, finfo.data);
}
else
{
var BinaryStream = Server.CreateObject("ADODB.Stream");
BinaryStream.Type = 1; // adTypeBinary
BinaryStream.Open();
try
{
BinaryStream.Write(finfo.data);
// Save binary data To disk
__Log("Saving to: " + params.AttachPath + safefilename);
CreateFullPath(params.AttachPath);
BinaryStream.SaveToFile(params.AttachPath + safefilename, 2); // adSaveCreateOverWrite
}
catch(e)
{
HELP;
}
}
}
else
result.message += msg;
}
//__Log(result);
// Toevoegen bijlage/bestand tracken.
if (pKey > -1 && params.trackcode && (params.kenmerktype == "E" || params.kenmerktype == "F" || params.kenmerktype == "M"))
{
if (pModule == "BEZ")
{ // Voor afpraken heb ik de afspraak key nodig i.p.v. de bezoekerskey om de kenmerk omschrijving te bepalen.
var sql = "SELECT bez_afspraak_key"
+ " FROM bez_bezoekers"
+ " WHERE bez_bezoekers_key = " + pKey;
oRs = Oracle.Execute(sql);
var afspr_key = oRs("bez_afspraak_key").Value;
oRs.close();
pKey = String(afspr_key);
}
if (pModule == "BEZ")
{ // Voor afpraken heb ik de afspraak key nodig i.p.v. de bezoekerskey om de kenmerk omschrijving te bepalen.
var sql = "SELECT bez_afspraak_key"
+ " FROM bez_bezoekers"
+ " WHERE bez_bezoekers_key = " + pKey;
oRs = Oracle.Execute(sql);
var afspr_key = oRs("bez_afspraak_key").Value;
oRs.close();
pKey = String(afspr_key);
}
for (j=0; j<result.safefilename.length; j++)
{
ptxt = L("lcl_shared_attachment_add").format(params.kenmerkoms, result.safefilename[j]);
shared.trackaction(params.trackcode, pKey, ptxt);
}
for (j=0; j<result.safefilename.length; j++)
{
ptxt = L("lcl_shared_attachment_add").format(params.kenmerkoms, result.safefilename[j]);
shared.trackaction(params.trackcode, pKey, ptxt);
}
}
if (!result.message && params.forcesingle)
@@ -278,6 +314,7 @@ function jslog(str) // VB Vindt de twee underscores niet leuk
<script language="VBScript" runat="Server">
Dim UploadRequest
Public Function iso8601Date(dt)
Dim s
s = datepart("yyyy",dt)
s = s & RIGHT("0" & datepart("m",dt),2)
s = s & RIGHT("0" & datepart("d",dt),2)
@@ -312,7 +349,7 @@ Public Function VB_getfiles()
' Vul via de (Javascipt) functie js_add_field de globale found_fields
' met de hidden form-fields uit de header
Dim ur_key, i, var_naam, var_waarde
Dim ur_key, i, var_naam, var_waarde, var_filename, var_data
ur_key = UploadRequest.Keys
for i = 0 To UploadRequest.Count -1
var_naam = ur_key(i)
@@ -321,8 +358,17 @@ Public Function VB_getfiles()
' En dan nu nog de bestanden..
contentType = UploadRequest.Item(var_naam).Item("ContentType")
filepathname = UploadRequest.Item(var_naam).Item("FileName")
value = MultiByteToBinary(UploadRequest.Item(var_naam).Item("Value"))
js_add_file filepathname, value, contentType
var_filename = safe.filename(Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))) '" //syntaxhighlight correctie
jslog "File: " & filepathname & " safe: " & var_filename
'' iPad/IPhone uploaden directe foto altijd als 'Image.jpg' wat erg lastig is
If LCase(var_filename) = "image.jpg" Or LCase(var_filename) = "image.jpeg" Then
var_filename = "Image " + iso8601Date(Now) + ".jpg"
jslog "-->Ios: " & var_filename
End If
var_data = MultiByteToBinary(UploadRequest.Item(var_naam).Item("Value"))
js_add_file var_filename, var_data, contentType
else
var_waarde = UploadRequest.Item(var_naam).Item("Value")
end if