private void SaveFile(object sender, EventArgs e) { // if file is selected exit if (!string.IsNullOrEmpty(this._txtFile.PostedFile.FileName)) { var extension = Path.GetExtension(this._txtFile.PostedFile.FileName).Replace(".", string.Empty); if (!string.IsNullOrEmpty(this.FileFilter) && !this.FileFilter.ToLowerInvariant().Contains(extension.ToLowerInvariant())) { // trying to upload a file not allowed for current filter var localizedString = Localization.GetString("UploadError", this.LocalResourceFile); if (string.IsNullOrEmpty(localizedString)) { localizedString = Utilities.GetLocalizedString("UploadError"); } this._lblMessage.Text = string.Format(localizedString, this.FileFilter, extension); } else { var folderManager = FolderManager.Instance; var folderPath = PathUtils.Instance.GetRelativePath(this.PortalId, this.ParentFolder) + this._cboFolders.SelectedItem.Value; // Check if this is a User Folder IFolderInfo folder; if (this.IsUserFolder(this._cboFolders.SelectedItem.Value)) { // Make sure the user folder exists folder = folderManager.GetFolder(PortalController.GetEffectivePortalId(this.PortalId), folderPath); if (folder == null) { // Add User folder var user = this.User ?? UserController.Instance.GetCurrentUserInfo(); // fix user's portal id user.PortalID = this.PortalId; folder = ((FolderManager)folderManager).AddUserFolder(user); } } else { folder = folderManager.GetFolder(this.PortalId, folderPath); } var fileName = Path.GetFileName(this._txtFile.PostedFile.FileName); try { FileManager.Instance.AddFile(folder, fileName, this._txtFile.PostedFile.InputStream, true); } catch (PermissionsNotMetException) { this._lblMessage.Text += "<br />" + string.Format(Localization.GetString("InsufficientFolderPermission"), folder.FolderPath); } catch (NoSpaceAvailableException) { this._lblMessage.Text += "<br />" + string.Format(Localization.GetString("DiskSpaceExceeded"), fileName); } catch (InvalidFileExtensionException) { this._lblMessage.Text += "<br />" + string.Format(Localization.GetString("RestrictedFileType"), fileName, Host.AllowedExtensionWhitelist.ToDisplayString()); } catch (Exception ex) { Logger.Error(ex); this._lblMessage.Text += "<br />" + string.Format(Localization.GetString("SaveFileError"), fileName); } } if (string.IsNullOrEmpty(this._lblMessage.Text)) { var fileName = this._txtFile.PostedFile.FileName.Substring(this._txtFile.PostedFile.FileName.LastIndexOf("\\") + 1); this.SetFilePath(fileName); } } this.Mode = FileControlMode.Normal; }
private void UploadFile(object sender, EventArgs e) { this.Mode = FileControlMode.UpLoadFile; }
private void CancelUpload(object sender, EventArgs e) { this.Mode = FileControlMode.Normal; }