private static string AddFile(int PortalId, Stream inStream, string fileName, string contentType, long length, string folderName, bool closeInputStream, bool clearCache, bool synchronize)
 {
     CommonLibrary.Services.FileSystem.FolderController objFolderController = new CommonLibrary.Services.FileSystem.FolderController();
     CommonLibrary.Services.FileSystem.FileController objFileController = new CommonLibrary.Services.FileSystem.FileController();
     string sourceFolderName = Globals.GetSubFolderPath(fileName, PortalId);
     CommonLibrary.Services.FileSystem.FolderInfo folder = objFolderController.GetFolder(PortalId, sourceFolderName, false);
     string sourceFileName = GetFileName(fileName);
     int intFileID;
     string retValue = "";
     retValue += CheckValidFileName(fileName);
     if (!String.IsNullOrEmpty(retValue))
     {
         return retValue;
     }
     string extension = Path.GetExtension(fileName).Replace(".", "");
     if (String.IsNullOrEmpty(contentType))
     {
         contentType = GetContentType(extension);
     }
     intFileID = objFileController.AddFile(PortalId, sourceFileName, extension, length, Null.NullInteger, Null.NullInteger, contentType, folderName, folder.FolderID, clearCache);
     if (folder.StorageLocation != (int)CommonLibrary.Services.FileSystem.FolderController.StorageLocationTypes.InsecureFileSystem || synchronize == false)
     {
         WriteStream(intFileID, inStream, fileName, folder.StorageLocation, closeInputStream);
     }
     retValue += UpdateFileData(intFileID, folder.FolderID, PortalId, sourceFileName, extension, contentType, length, folderName);
     if (folder.StorageLocation != (int)CommonLibrary.Services.FileSystem.FolderController.StorageLocationTypes.InsecureFileSystem)
     {
         DeleteFile(fileName);
     }
     if (folder.StorageLocation != (int)CommonLibrary.Services.FileSystem.FolderController.StorageLocationTypes.SecureFileSystem)
     {
         if (!fileName.EndsWith(".template"))
         {
             DeleteFile(fileName + Globals.glbProtectedExtension);
         }
     }
     return retValue;
 }
 public static void AddFile(string FileName, int PortalId, string Folder, string HomeDirectoryMapPath, string contentType)
 {
     string strFile = HomeDirectoryMapPath + Folder + FileName;
     CommonLibrary.Services.FileSystem.FileController objFiles = new CommonLibrary.Services.FileSystem.FileController();
     System.IO.FileInfo finfo = new System.IO.FileInfo(strFile);
     CommonLibrary.Services.FileSystem.FolderController objFolders = new CommonLibrary.Services.FileSystem.FolderController();
     CommonLibrary.Services.FileSystem.FolderInfo objFolder = objFolders.GetFolder(PortalId, Folder, false);
     CommonLibrary.Services.FileSystem.FileInfo objFile;
     objFile = objFiles.GetFile(FileName, PortalId, objFolder.FolderID);
     if (objFile == null)
     {
         objFiles.AddFile(PortalId, FileName, finfo.Extension, finfo.Length, 0, 0, contentType, "", objFolder.FolderID, true);
     }
     else
     {
         objFiles.UpdateFile(objFile.FileId, objFile.FileName, finfo.Extension, finfo.Length, 0, 0, contentType, "", objFolder.FolderID);
     }
 }
 private void ParseFiles(XmlNodeList nodeFiles, int PortalId, FolderInfo objFolder)
 {
     int FileId;
     FileController objController = new FileController();
     CommonLibrary.Services.FileSystem.FileInfo objInfo;
     string fileName;
     foreach (XmlNode node in nodeFiles)
     {
         fileName = XmlUtils.GetNodeValue(node.CreateNavigator(), "filename");
         objInfo = objController.GetFile(fileName, PortalId, objFolder.FolderID);
         if (objInfo == null)
         {
             objInfo = new CommonLibrary.Services.FileSystem.FileInfo();
             objInfo.PortalId = PortalId;
             objInfo.FileName = fileName;
             objInfo.Extension = XmlUtils.GetNodeValue(node.CreateNavigator(), "extension");
             objInfo.Size = XmlUtils.GetNodeValueInt(node, "size");
             objInfo.Width = XmlUtils.GetNodeValueInt(node, "width");
             objInfo.Height = XmlUtils.GetNodeValueInt(node, "height");
             objInfo.ContentType = XmlUtils.GetNodeValue(node.CreateNavigator(), "contenttype");
             objInfo.FolderId = objFolder.FolderID;
             objInfo.Folder = objFolder.FolderPath;
             FileId = objController.AddFile(objInfo);
         }
         else
         {
             FileId = objInfo.FileId;
         }
     }
 }