protected void Page_Load(object sender, EventArgs e) { strCmd = Request.QueryString["cmd"] + ""; strType = Request.QueryString["type"] + ""; strFolder = Request.QueryString["folder"] + ""; strFile = Request.QueryString["file"] + ""; strLang = Request.QueryString["lang"] + ""; //not used right now, but grab it strEditor = Request.QueryString["editor"] + ""; strCurrPath = Request.QueryString["currpath"] + ""; strProfile = Request.QueryString["profile"] + ""; // load config objConfig = new clsConfig(strProfile); //check inputs if (strCurrPath.Length > 0) { strCurrPath = strCurrPath.TrimEnd('\\') + "\\"; } //set the apply string, based on the passed type if (strType == "") { strType = "0"; } switch (strType) { case "1": strApply = "apply_img"; boolOnlyImage = true; strAllowedFileExt = objConfig.strAllowedImageExtensions; break; case "2": strApply = "apply_link"; strAllowedFileExt = objConfig.strAllowedAllExtensions; break; default: if (Convert.ToInt32(strType) >= 3) { strApply = "apply_video"; boolOnlyVideo = true; strAllowedFileExt = objConfig.strAllowedVideoExtensions; } else { strApply = "apply"; strAllowedFileExt = objConfig.strAllowedAllExtensions; } break; } //setup current link strCurrLink = "dialog.aspx?type=" + strType + "&editor=" + strEditor + "&lang=" + strLang + "&profile=" + strProfile; switch (strCmd) { case "debugsettings": Response.Write("<style>"); Response.Write("body {font-family: Verdana; font-size: 10pt;}"); Response.Write(".table {display: table; border-collapse: collapse; margin: 20px; background-color: #E7F6F7;}"); Response.Write(".tcaption {display: table-caption; padding: 5px; font-size: 14pt; font-weight: bold; background-color: #9fcff7;}"); Response.Write(".tr {display: table-row;}"); Response.Write(".tr:hover {background-color: #E7F6F7;}"); Response.Write(".td {display: table-cell; padding: 5px; border: 1px solid #a19e9e;}"); Response.Write("</style>"); Response.Write("<div class=\"table\">"); //start table Response.Write("<div class=\"tcaption\">Operating Settings</div>"); //caption Response.Write("<div class=\"tbody\">"); //start body Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>AllowCreateFolder:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.boolAllowCreateFolder + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>AllowDeleteFile:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.boolAllowDeleteFile + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>AllowDeleteFolder:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.boolAllowDeleteFolder + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>AllowUploadFile:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.boolAllowUploadFile + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>MaxUploadSizeMb:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.intMaxUploadSizeMb + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>AllowedAllExtensions:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strAllowedAllExtensions + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>AllowedFileExtensions:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strAllowedFileExtensions + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>AllowedImageExtensions:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strAllowedImageExtensions + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>AllowedMiscExtensions:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strAllowedMiscExtensions + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>AllowedMusicExtensions:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strAllowedMusicExtensions + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>AllowedVideoExtensions:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strAllowedVideoExtensions + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>BaseURL:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strBaseURL + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>DocRoot:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strDocRoot + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>ThumbPath:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strThumbPath + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>ThumbURL:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strThumbURL + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>UploadPath:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strUploadPath + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>UploadURL:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strUploadURL + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>FillSelector:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strFillSelector + "</div>"); Response.Write("</div>"); //end row Response.Write("<div class=\"tr\">"); // start row Response.Write("<div class=\"td\"><b>PopupCloseCode:</b></div>"); Response.Write("<div class=\"td\">" + objConfig.strPopupCloseCode + "</div>"); Response.Write("</div>"); //end row Response.Write("</div>"); //end body Response.Write("</div>"); //end table Response.End(); break; case "createfolder": try { strFolder = Request.Form["folder"] + ""; //forge ahead without checking for existence //catch will save us Directory.CreateDirectory(objConfig.strUploadPath + "\\" + strFolder.ToLower().Replace(" ", "-")); Directory.CreateDirectory(objConfig.strThumbPath + "\\" + strFolder.ToLower().Replace(" ", "-")); // end response, since it's an ajax call Response.End(); } catch { //TODO: write error } break; case "upload": strFolder = Request.Form["folder"] + ""; HttpPostedFile filUpload = Request.Files["file"]; string strTargetFile; string strThumbFile; //check file was submitted if ((filUpload != null) && (filUpload.ContentLength > 0)) { var nameFile = Util.RemoveSignInVietnameseString(filUpload.FileName); strTargetFile = objConfig.strUploadPath + strFolder + nameFile; strThumbFile = objConfig.strThumbPath + strFolder + nameFile; if (File.Exists(strTargetFile)) { var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; var random = new Random(); var bee = new string( Enumerable.Repeat(chars, 4) .Select(s => s[random.Next(s.Length)]) .ToArray()); strTargetFile = objConfig.strUploadPath + strFolder + bee + nameFile; strThumbFile = objConfig.strThumbPath + strFolder + bee + nameFile; } filUpload.SaveAs(strTargetFile); if (isImageFile(strTargetFile)) { createThumbnail(strTargetFile, strThumbFile); } } // end response if (Request.Form["fback"] == "true") { Response.Redirect(strCurrLink); } else { Response.End(); } break; case "download": FileInfo objFile = new FileInfo(objConfig.strUploadPath + "\\" + strFile); Response.ClearHeaders(); Response.AddHeader("Pragma", "private"); Response.AddHeader("Cache-control", "private, must-revalidate"); Response.AddHeader("Content-Type", "application/octet-stream"); Response.AddHeader("Content-Length", objFile.Length.ToString()); Response.AddHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(strFile)); Response.WriteFile(objConfig.strUploadPath + "\\" + strFile); break; case "delfile": try { File.Delete(objConfig.strUploadPath + "\\" + strFile); if (File.Exists(objConfig.strThumbPath + "\\" + strFile)) { File.Delete(objConfig.strThumbPath + "\\" + strFile); } } catch { //TODO: set error } goto default; case "delfolder": try { Directory.Delete(objConfig.strUploadPath + "\\" + strFolder, true); Directory.Delete(objConfig.strThumbPath + "\\" + strFolder, true); } catch { //TODO: set error } goto default; default: //just a regular page load if (strCurrPath != "") { // add "up one" folder objFItem = new clsFileItem(); objFItem.strName = ".."; objFItem.boolIsFolder = true; objFItem.boolIsFolderUp = true; objFItem.intColNum = getNextColNum(); objFItem.strPath = getUpOneDir(strCurrPath); objFItem.strClassType = "dir"; objFItem.strDeleteLink = "<a class=\"btn erase-button top-right disabled\" title=\"Erase\"><i class=\"icon-trash\"></i></a>"; objFItem.strThumbImage = "img/ico/folder_return.png"; objFItem.strLink = "<a title=\"Open\" href=\"" + strCurrLink + "&currpath=" + objFItem.strPath + "\"><img class=\"directory-img\" src=\"" + objFItem.strThumbImage + "\" alt=\"folder\" /><h3>..</h3></a>"; arrLinks.Add(objFItem); } //load folders arrFolders = Directory.GetDirectories(objConfig.strUploadPath + strCurrPath); foreach (string strF in arrFolders) { objFItem = new clsFileItem(); objFItem.strName = Path.GetFileName(strF); objFItem.boolIsFolder = true; objFItem.intColNum = getNextColNum(); objFItem.strPath = strCurrPath + Path.GetFileName(strF); objFItem.strClassType = "dir"; if (objConfig.boolAllowDeleteFolder) { objFItem.strDeleteLink = "<a href=\"" + strCurrLink + "&cmd=delfolder&folder=" + objFItem.strPath + "&currpath=" + strCurrPath + "\" class=\"btn erase-button top-right\" onclick=\"return confirm('Are you sure to delete the folder and all the objects in it?');\" title=\"Erase\"><i class=\"icon-trash\"></i></a>"; } else { objFItem.strDeleteLink = "<a class=\"btn erase-button top-right disabled\" title=\"Erase\"><i class=\"icon-trash\"></i></a>"; } objFItem.strThumbImage = "img/ico/folder.png"; objFItem.strLink = "<a title=\"Open\" href=\"" + strCurrLink + "&currpath=" + objFItem.strPath + "\"><img class=\"directory-img\" src=\"" + objFItem.strThumbImage + "\" alt=\"folder\" /><h3>" + objFItem.strName + "</h3></a>"; arrLinks.Add(objFItem); } // load files arrFiles = Directory.GetFiles(objConfig.strUploadPath + strCurrPath); foreach (string strF in arrFiles) { objFItem = new clsFileItem(); objFItem.strName = Path.GetFileNameWithoutExtension(strF); objFItem.boolIsFolder = false; objFItem.strPath = strCurrPath + Path.GetFileName(strF); objFItem.boolIsImage = isImageFile(Path.GetFileName(strF)); objFItem.boolIsVideo = isVideoFile(Path.GetFileName(strF)); objFItem.boolIsMusic = isMusicFile(Path.GetFileName(strF)); objFItem.boolIsMisc = isMiscFile(Path.GetFileName(strF)); // check to see if it's the type of file we are looking at if ((boolOnlyImage && objFItem.boolIsImage) || (boolOnlyVideo && objFItem.boolIsVideo) || (!boolOnlyImage && !boolOnlyVideo)) { objFItem.intColNum = getNextColNum(); // get display class type if (objFItem.boolIsImage) { objFItem.strClassType = "2"; } else { if (objFItem.boolIsMisc) { objFItem.strClassType = "3"; } else { if (objFItem.boolIsMusic) { objFItem.strClassType = "5"; } else { if (objFItem.boolIsVideo) { objFItem.strClassType = "4"; } else { objFItem.strClassType = "1"; } } } } // get delete link if (objConfig.boolAllowDeleteFile) { objFItem.strDeleteLink = "<a href=\"" + strCurrLink + "&cmd=delfile&file=" + objFItem.strPath + "&currpath=" + strCurrPath + "\" class=\"btn erase-button\" onclick=\"return confirm('Are you sure to delete this file?');\" title=\"Erase\"><i class=\"icon-trash\"></i></a>"; } else { objFItem.strDeleteLink = "<a class=\"btn erase-button disabled\" title=\"Erase\"><i class=\"icon-trash\"></i></a>"; } // get thumbnail image if (objFItem.boolIsImage) { // first check to see if thumb exists if (!File.Exists(objConfig.strThumbPath + objFItem.strPath)) { // thumb doesn't exist, create it strTargetFile = objConfig.strUploadPath + objFItem.strPath; strThumbFile = objConfig.strThumbPath + objFItem.strPath; createThumbnail(strTargetFile, strThumbFile); } objFItem.strThumbImage = objConfig.strThumbURL + "/" + objFItem.strPath.Replace('\\', '/'); } else { if (File.Exists(Directory.GetParent(Request.PhysicalPath).FullName + "\\img\\ico\\" + Path.GetExtension(strF).TrimStart('.').ToUpper() + ".png")) { objFItem.strThumbImage = "img/ico/" + Path.GetExtension(strF).TrimStart('.').ToUpper() + ".png"; } else { objFItem.strThumbImage = "img/ico/Default.png"; } } objFItem.strDownFormOpen = "<form action=\"dialog.aspx?cmd=download&file=" + objFItem.strPath + "\" method=\"post\" class=\"download-form\">"; if (objFItem.boolIsImage) { objFItem.strPreviewLink = "<a class=\"btn preview\" title=\"Preview\" data-url=\"" + objConfig.strUploadURL + "/" + objFItem.strPath.Replace('\\', '/') + "\" data-toggle=\"lightbox\" href=\"#previewLightbox\"><i class=\"icon-eye-open\"></i></a>"; } else { objFItem.strPreviewLink = "<a class=\"btn preview disabled\" title=\"Preview\"><i class=\"icon-eye-open\"></i></a>"; } objFItem.strLink = "<a class=\"abcx\" href=\"#\" title=\"Select\" onclick=\"" + strApply + "('" + objConfig.strUploadURL + "/" + objFItem.strPath.Replace('\\', '/') + "'," + strType + ")\";\"><img data-src=\"holder.js/140x100\" alt=\"140x100\" src=\"" + objFItem.strThumbImage + "\" height=\"100\"><h4>" + objFItem.strName + "</h4></a>"; arrLinks.Add(objFItem); } } // foreach break; } // switch } // page load
protected void Page_Load(object sender, EventArgs e) { strCmd = Request.QueryString["cmd"] + ""; strType = Request.QueryString["type"] + ""; strFolder = Request.QueryString["folder"] + ""; strFile = Request.QueryString["file"] + ""; strLang = Request.QueryString["lang"] + ""; //not used right now, but grab it strEditor = Request.QueryString["editor"] + ""; strCurrPath = Request.QueryString["currpath"] + ""; //check inputs if (this.strCurrPath.Length > 0) { this.strCurrPath = this.strCurrPath.TrimEnd('\\') + "\\"; } //set the apply string, based on the passed type if (this.strType == "") { this.strType = "0"; } switch (this.strType) { case "1": this.strApply = "apply_img"; this.boolOnlyImage = true; break; case "2": this.strApply = "apply_link"; break; default: if (Convert.ToInt32(this.strType) >= 3) { this.strApply = "apply_video"; this.boolOnlyVideo = true; } else { this.strApply = "apply"; } break; } //setup current link strCurrLink = "dialog.aspx?type=" + this.strType + "&editor=" + this.strEditor + "&lang=" + this.strLang; switch (strCmd) { case "debugsettings": Response.Write("<b>AllowCreateFolder:</b> " + clsConfig.boolAllowCreateFolder + "<br>"); Response.Write("<b>AllowDeleteFile:</b> " + clsConfig.boolAllowDeleteFile + "<br>"); Response.Write("<b>AllowDeleteFolder:</b> " + clsConfig.boolAllowDeleteFolder + "<br>"); Response.Write("<b>AllowUploadFile:</b> " + clsConfig.boolAllowUploadFile + "<br>"); Response.Write("<b>MaxUploadSizeMb:</b> " + clsConfig.intMaxUploadSizeMb + "<br>"); Response.Write("<b>AllowedAllExtensions:</b> " + clsConfig.strAllowedAllExtensions + "<br>"); Response.Write("<b>AllowedFileExtensions:</b> " + clsConfig.strAllowedFileExtensions + "<br>"); Response.Write("<b>AllowedImageExtensions:</b> " + clsConfig.strAllowedImageExtensions + "<br>"); Response.Write("<b>AllowedMiscExtensions:</b> " + clsConfig.strAllowedMiscExtensions + "<br>"); Response.Write("<b>AllowedMusicExtensions:</b> " + clsConfig.strAllowedMusicExtensions + "<br>"); Response.Write("<b>AllowedVideoExtensions:</b> " + clsConfig.strAllowedVideoExtensions + "<br>"); Response.Write("<b>BaseURL:</b> " + clsConfig.strBaseURL + "<br>"); Response.Write("<b>DocRoot:</b> " + clsConfig.strDocRoot + "<br>"); Response.Write("<b>ThumbPath:</b> " + clsConfig.strThumbPath + "<br>"); Response.Write("<b>ThumbURL:</b> " + clsConfig.strThumbURL + "<br>"); Response.Write("<b>UploadPath:</b> " + clsConfig.strUploadPath + "<br>"); Response.Write("<b>UploadURL:</b> " + clsConfig.strUploadURL + "<br>"); Response.End(); break; case "createfolder": try { strFolder = Request.Form["folder"] + ""; //forge ahead without checking for existence //catch will save us Directory.CreateDirectory(clsConfig.strUploadPath + "\\" + strFolder); Directory.CreateDirectory(clsConfig.strThumbPath + "\\" + strFolder); // end response, since it's an ajax call Response.End(); } catch { //TODO: write error } break; case "upload": strFolder = Request.Form["folder"] + ""; HttpPostedFile filUpload = Request.Files["file"]; string strTargetFile; string strThumbFile; //check file was submitted if ((filUpload != null) && (filUpload.ContentLength > 0)) { strTargetFile = clsConfig.strUploadPath + this.strFolder + filUpload.FileName; strThumbFile = clsConfig.strThumbPath + this.strFolder + filUpload.FileName; filUpload.SaveAs(strTargetFile); if (this.isImageFile(strTargetFile)) { this.createThumbnail(strTargetFile, strThumbFile); } } // end response Response.End(); break; case "download": FileInfo objFile = new FileInfo(clsConfig.strUploadPath + "\\" + this.strFile); Response.ClearHeaders(); Response.AddHeader("Pragma", "private"); Response.AddHeader("Cache-control", "private, must-revalidate"); Response.AddHeader("Content-Type", "application/octet-stream"); Response.AddHeader("Content-Length", objFile.Length.ToString()); Response.AddHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(this.strFile)); Response.WriteFile(clsConfig.strUploadPath + "\\" + this.strFile); break; case "delfile": try { File.Delete(clsConfig.strUploadPath + "\\" + this.strFile); if (File.Exists(clsConfig.strThumbPath + "\\" + this.strFile)) { File.Delete(clsConfig.strThumbPath + "\\" + this.strFile); } } catch { //TODO: set error } goto default; case "delfolder": try { Directory.Delete(clsConfig.strUploadPath + "\\" + strFolder, true); Directory.Delete(clsConfig.strThumbPath + "\\" + strFolder, true); } catch { //TODO: set error } goto default; default: //just a regular page load if (this.strCurrPath != "") { // add "up one" folder this.objFItem = new clsFileItem(); this.objFItem.strName = ".."; this.objFItem.boolIsFolder = true; this.objFItem.boolIsFolderUp = true; this.objFItem.intColNum = this.getNextColNum(); this.objFItem.strPath = this.getUpOneDir(this.strCurrPath); this.objFItem.strClassType = "dir"; this.objFItem.strDeleteLink = "<a class=\"btn erase-button top-right disabled\" title=\"Erase\"><i class=\"icon-trash\"></i></a>"; this.objFItem.strThumbImage = "img/ico/folder_return.png"; this.objFItem.strLink = "<a title=\"Open\" href=\"" + this.strCurrLink + "&currpath=" + this.objFItem.strPath + "\"><img class=\"directory-img\" src=\"" + this.objFItem.strThumbImage + "\" alt=\"folder\" /><h3>..</h3></a>"; this.arrLinks.Add(objFItem); } //load folders arrFolders = Directory.GetDirectories(clsConfig.strUploadPath + this.strCurrPath); foreach (string strF in arrFolders) { this.objFItem = new clsFileItem(); this.objFItem.strName = Path.GetFileName(strF); this.objFItem.boolIsFolder = true; this.objFItem.intColNum = this.getNextColNum(); this.objFItem.strPath = this.strCurrPath + Path.GetFileName(strF); this.objFItem.strClassType = "dir"; if (clsConfig.boolAllowDeleteFolder) { this.objFItem.strDeleteLink = "<a href=\"" + this.strCurrLink + "&cmd=delfolder&folder=" + this.objFItem.strPath + "&currpath=" + this.strCurrPath + "\" class=\"btn erase-button top-right\" onclick=\"return confirm('Are you sure to delete the folder and all the objects in it?');\" title=\"Erase\"><i class=\"icon-trash\"></i></a>"; } else { this.objFItem.strDeleteLink = "<a class=\"btn erase-button top-right disabled\" title=\"Erase\"><i class=\"icon-trash\"></i></a>"; } this.objFItem.strThumbImage = "img/ico/folder.png"; this.objFItem.strLink = "<a title=\"Open\" href=\"" + this.strCurrLink + "&currpath=" + this.objFItem.strPath + "\"><img class=\"directory-img\" src=\"" + this.objFItem.strThumbImage + "\" alt=\"folder\" /><h3>" + this.objFItem.strName + "</h3></a>"; this.arrLinks.Add(objFItem); } // load files arrFiles = Directory.GetFiles(clsConfig.strUploadPath + this.strCurrPath); foreach (string strF in arrFiles) { this.objFItem = new clsFileItem(); this.objFItem.strName = Path.GetFileNameWithoutExtension(strF); this.objFItem.boolIsFolder = false; this.objFItem.intColNum = this.getNextColNum(); this.objFItem.strPath = this.strCurrPath + Path.GetFileName(strF); this.objFItem.boolIsImage = this.isImageFile(Path.GetFileName(strF)); this.objFItem.boolIsVideo = this.isVideoFile(Path.GetFileName(strF)); this.objFItem.boolIsMusic = this.isMusicFile(Path.GetFileName(strF)); this.objFItem.boolIsMisc = this.isMiscFile(Path.GetFileName(strF)); // get display class type if (this.objFItem.boolIsImage) { this.objFItem.strClassType = "2"; } else { if (this.objFItem.boolIsMisc) { this.objFItem.strClassType = "3"; } else { if (this.objFItem.boolIsMusic) { this.objFItem.strClassType = "5"; } else { if (this.objFItem.boolIsVideo) { this.objFItem.strClassType = "4"; } else { this.objFItem.strClassType = "1"; } } } } // get delete link if (clsConfig.boolAllowDeleteFile) { this.objFItem.strDeleteLink = "<a href=\"" + this.strCurrLink + "&cmd=delfile&file=" + this.objFItem.strPath + "&currpath=" + this.strCurrPath + "\" class=\"btn erase-button\" onclick=\"return confirm('Are you sure to delete this file?');\" title=\"Erase\"><i class=\"icon-trash\"></i></a>"; } else { this.objFItem.strDeleteLink = "<a class=\"btn erase-button disabled\" title=\"Erase\"><i class=\"icon-trash\"></i></a>"; } // get thumbnail image if (this.objFItem.boolIsImage) { this.objFItem.strThumbImage = clsConfig.strThumbURL + "/" + this.objFItem.strPath.Replace('\\', '/'); } else { if (File.Exists(Directory.GetParent(Request.PhysicalPath).FullName + "\\img\\ico\\" + Path.GetExtension(strF).TrimStart('.').ToUpper() + ".png")) { this.objFItem.strThumbImage = "img/ico/" + Path.GetExtension(strF).TrimStart('.').ToUpper() + ".png"; } else { this.objFItem.strThumbImage = "img/ico/Default.png"; } } this.objFItem.strDownFormOpen = "<form action=\"dialog.aspx?cmd=download&file=" + this.objFItem.strPath + "\" method=\"post\" class=\"download-form\">"; if (this.objFItem.boolIsImage) { this.objFItem.strPreviewLink = "<a class=\"btn preview\" title=\"Preview\" data-url=\"" + clsConfig.strUploadURL + "/" + this.objFItem.strPath.Replace('\\', '/') + "\" data-toggle=\"lightbox\" href=\"#previewLightbox\"><i class=\"icon-eye-open\"></i></a>"; } else { this.objFItem.strPreviewLink = "<a class=\"btn preview disabled\" title=\"Preview\"><i class=\"icon-eye-open\"></i></a>"; } this.objFItem.strLink = "<a href=\"#\" title=\"Select\" onclick=\"" + this.strApply + "('" + clsConfig.strUploadURL + "/" + this.objFItem.strPath.Replace('\\', '/') + "'," + this.strType + ")\";\"><img data-src=\"holder.js/140x100\" alt=\"140x100\" src=\"" + this.objFItem.strThumbImage + "\" height=\"100\"><h4>" + this.objFItem.strName + "</h4></a>"; // check to see if it's the type of file we are looking at if ((this.boolOnlyImage && this.objFItem.boolIsImage) || (this.boolOnlyVideo && this.objFItem.boolIsVideo) || (!this.boolOnlyImage && !this.boolOnlyVideo)) { this.arrLinks.Add(objFItem); } } // foreach break; } // switch } // page load