FSN#41529 Upload mogelijkheid voor xxxx.xsl

svn path=/Website/trunk/; revision=34844
This commit is contained in:
Jos Groot Lipman
2017-08-07 11:21:10 +00:00
parent 3e9db52876
commit fcbac73ae0
5 changed files with 35 additions and 21 deletions

View File

@@ -43,7 +43,7 @@
{
var url = "../shared/BijlagenForm.asp?module=" + module;
var proturl = protectQS.create(url);
CreateButton(label, "bl('" + safe.jsstring(proturl) + "')");
CreateButton("{0} ({1})".format(label, module), "bl('" + safe.jsstring(proturl) + "')");
}
}
@@ -62,6 +62,7 @@
bijlagen("WEB_PRSSYS", "Marktplaats foto's", "MRK");
bijlagen("WEB_PRSSYS", "Menu plaatjes", "MENU");
bijlagen("WEB_PRSSYS", "Opdrachtverstrekking bijlagen", "BDRADR");
bijlagen("WEB_FACFAC", custpath + "/xsl bestanden", "CUSTXSL");
BLOCK_END();

View File

@@ -78,7 +78,7 @@ if (params.extFilter)
function MatchFile(fName)
{
if (vFileName.toLowerCase() == 'web.config') // die nooit tonen
if (fName.toLowerCase() == 'web.config') // die nooit tonen
return false;
if (showFilter=="")
@@ -102,24 +102,18 @@ if (fso.FolderExists(params.AttachPath))
// fso.DeleteFolder(params.AttachPath, true);
}
function FileToAdd(vFileName, vDateStr, vFileSize)
{
this.vFileName = vFileName;
this.vDateStr = vDateStr;
this.vFileSize = vFileSize;
}
for (; !fc.atEnd(); fc.moveNext())
{
fsoFile = fc.item();
vFileName = fsoFile.Name
if (!MatchFile(vFileName))
if (!MatchFile(fsoFile.Name))
continue;
var fdata = { vFileName: fsoFile.Name,
vDateStr: fsoFile.DateLastModified,
vFileSize: fsoFile.Size }
if (fsoFile.Name.match(/_20[0-9]{6}_[0-9]{6}\./))
fdata.ishistory = true;
vFileDate = fsoFile.DateLastModified
vFileSize = fsoFile.Size
vDateStr = vFileDate // Right("0" & DatePart("d",vFileDate),2) & "/" & Right("0" & DatePart("m",vFileDate),2) & "/" & DatePart("yyyy",vFileDate)
fileArray.push(new FileToAdd(vFileName, vDateStr, vFileSize));
fileArray.push(fdata);
}
// Sorteer afhankelijk van de setting S("flexFilesOrdering") twee FileToAdd 'record's
@@ -310,7 +304,7 @@ if (fso.FolderExists(params.AttachPath))
</TD>
<TD align='right'><%=toDateTimeString(fileArray[i].vDateStr)%></TD>
<TD align='right'><%=fileArray[i].vFileSize%></TD>
<% if (!pReado)
<% if (!pReado && (!params.keephistory || fileArray[i].ishistory))
{ %>
<td align=center><span onClick="DeleteFile('<%=safe.jsstring(fileArray[i].vFileName)%>', '<%=safe.jsstring(protectQS.create("Bijlagenform_delete.asp?DoDelete="+Server.URLEncode(fileArray[i].vFileName)+transitParam))%>')"
class='fa fa-trash fa-lg' title='<%=L("lcl_filedelete")%>'></span>
@@ -342,7 +336,7 @@ if (fso.FolderExists(params.AttachPath))
<% } %>
</tbody>
<script type="text/javascript">
window.return_data = { cnt: <%=fileArray.length%>, fileName: '<%=safe.jsstring(fileArray.length > 0? vFileName : "")%>'};
window.return_data = { cnt: <%=fileArray.length%>, fileName: '<%=safe.jsstring(fileArray.length > 0? fileArray[0].vFileName : "")%>'};
FcltMgr.setCloseParams(window.return_data); // Zelfs als je kruisje gebruikt
$(document).ready(function ()
{

View File

@@ -42,6 +42,9 @@ DOCTYPE_Disable = 1; // ook al volgt straks een response.Clear
var pcontentdp = getQParam("contentdp", "attachment");
var pDosave = getQParam("dosave", 0)==1;
// Doet whitelist van pModule, kan S("flexAllowedExt") overrulen
params = flexProps(pModule, pKey, String(pKenmerk_key), pNiveau);
// Zonder extensie downloaden keuren we goed
// (ook al staan we sinds 5.2.1 uploaden niet meer toe)
if (pFileName.indexOf(".") >= 0 && !new RegExp(S("flexAllowedExt"), "ig").test(pFileName))
@@ -49,9 +52,6 @@ DOCTYPE_Disable = 1; // ook al volgt straks een response.Clear
INTERNAL_ERROR_BAD_EXT;
}
// Doet whitelist van pModule
params = flexProps(pModule, pKey, String(pKenmerk_key), pNiveau);
Response.CacheControl = "private"; // UWVA#38548: Anders problemen met IE8
// Bestanden zijn nu te vinden on ...cust/*/flexfiles/[module]/[key]/

View File

@@ -313,6 +313,15 @@ function flexProps(pModule, pKey, pSubpath, pNiveau, params)
result.multi = true;
result.extFilter = S("flexExtensionFilter"); // Mag in principe alles zijn
break;
case "CUSTXSL":
result.AttachRootPath = Server.MapPath(custpath + "/xsl");
result.AttachPath = result.AttachRootPath + "/";
result.multi = true;
result.extFilter = "xsl";
result.keephistory = true;
settings.overrule_setting("flexAllowedExt", "xsl"); // tijdelijk xsl toestaan
settings.overrule_setting("flexFilesOrdering", 0);
break;
default:
INTERNAL_ERROR_MODULE;
}

View File

@@ -51,6 +51,7 @@ if (params.extFilter)
regFilter = regFilter.replace(/( |,|;)/g,"|"); // Altijd | karakter
regFilter = ".*\\." + "(" + regFilter + ")$"; // er moet een punt voor en extensie is aan het einde
}
var fso = Server.CreateObject("Scripting.FileSystemObject")
%>
@@ -156,6 +157,16 @@ if (params.extFilter)
// Save binary data To disk
__Log("Saving to: " + params.AttachPath + safefilename);
CreateFullPath(params.AttachPath);
if (params.keephistory && fso.FileExists(params.AttachPath + safefilename))
{
var jsDate = new Date();
var backupTime = String(jsDate.getFullYear()) + padout(jsDate.getMonth() + 1) + padout(jsDate.getDate()) + "_"
+ padout(jsDate.getHours()) + padout(jsDate.getMinutes())+ padout(jsDate.getSeconds());
// backupTime vlak voor de extensie plakken
var backupName = safefilename.replace(/(\.[a-z]*)$/i, "_" + backupTime + "$1");
fso.MoveFile(params.AttachPath + safefilename, params.AttachPath + backupName);
__DoLog("Replaced {0}, previous version in {1}".format(params.AttachPath + safefilename, backupName));
}
BinaryStream.SaveToFile(params.AttachPath + safefilename, 2); // adSaveCreateOverWrite
}
catch(e)
@@ -201,7 +212,6 @@ if (params.extFilter)
}
else
{
var fso = Server.CreateObject("Scripting.FileSystemObject")
var f = fso.GetFolder(params.AttachPath);
for (fc = new Enumerator(f.files); !fc.atEnd(); fc.moveNext())
{