public void Rename(IFile file, string newName) { var callLog = Log.Call(); try { var path = Path.Combine(_serverPaths.FullContentPath(AdamContext.Site.ContentPath), file.Path); var currentFilePath = Path.Combine(path, file.FullName); if (TryToRenameFile(newName, currentFilePath, path)) { return; } var dnnFile = OqtFileRepository.GetFile(file.AsOqt().SysId); dnnFile.Name = newName; OqtFileRepository.UpdateFile(dnnFile); Log.Add($"VirtualFile {dnnFile.FileId} renamed to {dnnFile.Name}"); callLog("ok"); } catch (Exception e) { callLog($"Error:{e.Message}; {e.InnerException}"); } }
public File <int, int> Add(IFolder parent, Stream body, string fileName, bool ensureUniqueName) { var callLog = Log.Call <File <int, int> >($"..., ..., {fileName}, {ensureUniqueName}"); if (ensureUniqueName) { fileName = FindUniqueFileName(parent, fileName); } var fullContentPath = Path.Combine(_serverPaths.FullContentPath(AdamContext.Site.ContentPath), parent.Path); Directory.CreateDirectory(fullContentPath); var filePath = Path.Combine(fullContentPath, fileName); using (var stream = new FileStream(filePath, FileMode.Create)) { body.CopyTo(stream); } var fileInfo = new FileInfo(filePath); // register into oqtane var oqtFileData = new File { Name = Path.GetFileName(fileName), FolderId = parent.Id, Extension = fileInfo.Extension.ToLowerInvariant().Replace(".", ""), Size = (int)fileInfo.Length, ImageHeight = 0, ImageWidth = 0 }; var oqtFile = OqtFileRepository.AddFile(oqtFileData); return(callLog("ok", GetFile(oqtFile.FileId))); }
public void Delete(IFile file) { var callLog = Log.Call(); var dnnFile = OqtFileRepository.GetFile(file.AsOqt().SysId); OqtFileRepository.DeleteFile(dnnFile.FileId); callLog("ok"); }
public List <File <int, int> > GetFiles(IFolder folder) { var callLog = Log.Call <List <File <int, int> > >(); var fldObj = OqtFolderRepository.GetFolder(folder.AsOqt().SysId); // sometimes the folder doesn't exist for whatever reason if (fldObj == null) { return(new List <File <int, int> >()); } // try to find the files var firstList = OqtFileRepository.GetFiles(fldObj.FolderId); var files = firstList?.Select(OqtToAdam).ToList() ?? new List <File <int, int> >(); return(callLog($"{files.Count}", files)); }
//public int MaxUploadKb() // => (ConfigurationManager.GetSection("system.web/httpRuntime") as HttpRuntimeSection) // ?.MaxRequestLength ?? 1; #endregion #region Files public File <int, int> GetFile(int fileId) { var file = OqtFileRepository.GetFile(fileId); return(OqtToAdam(file)); }