Esempio n. 1
0
        public static void MoveFolders(IYZDbProvider provider, IDbConnection cn, int[] folderids, int targetfolderid, MovePosition position)
        {
            Folder           targetFolder = DirectoryManager.GetFolderByID(provider, cn, targetfolderid);
            FolderCollection folders;
            int parentFolderId;

            if (position == MovePosition.Append)
            {
                parentFolderId = targetFolder.FolderID;
            }
            else
            {
                parentFolderId = targetFolder.ParentID;
            }

            foreach (int folderid in folderids)
            {
                Folder folder = new Folder();
                folder.FolderID = folderid;
                folder.ParentID = parentFolderId;
                folder.RootID   = targetFolder.RootID;
                DirectoryManager.UpdateParent(provider, cn, folder);
            }

            folders = DirectoryManager.GetFolders(provider, cn, parentFolderId, null, null);

            folders.Move <int>("FolderID", folderids, targetfolderid, position);

            for (int i = 0; i < folders.Count; i++)
            {
                Folder folder = folders[i];
                folder.OrderIndex = i;
                DirectoryManager.UpdateOrderIndex(provider, cn, folder);
            }
        }
Esempio n. 2
0
        public static void MoveFiles(IYZDbProvider provider, IDbConnection cn, int folderid, int[] fileids, int targetfileid, MovePosition position)
        {
            FileCollection files = GetFiles(provider, cn, folderid, null, null, -1);

            files.Move <int>("ID", fileids, targetfileid, position);

            for (int i = 0; i < files.Count; i++)
            {
                File file = files[i];
                file.OrderIndex = i;
                DirectoryManager.UpdateOrderIndex(provider, cn, file);
            }
        }