public static ClearEntriesForDirectory ( IFilesStorageProviderV30 provider, string directory ) : void | ||
provider | IFilesStorageProviderV30 | The provider. |
directory | string | The directory. |
return | void |
protected void btnNewDirectory_Click(object sender, EventArgs e) { if (canCreateDirs) { txtNewDirectoryName.Text = txtNewDirectoryName.Text.Trim(); lblNewDirectoryResult.Text = ""; txtNewDirectoryName.Text = txtNewDirectoryName.Text.Trim('/'); AuthWriter.ClearEntriesForDirectory(provider, CurrentDirectory + txtNewDirectoryName.Text + "/"); bool done = provider.CreateDirectory(CurrentDirectory, txtNewDirectoryName.Text); if (!done) { lblNewDirectoryResult.CssClass = "resulterror"; lblNewDirectoryResult.Text = Properties.Messages.CannotCreateNewDirectory; } else { txtNewDirectoryName.Text = ""; Host.Instance.OnDirectoryActivity(provider.GetType().FullName, CurrentDirectory + txtNewDirectoryName.Text + "/", null, FileActivity.DirectoryCreated); } rptItems.DataBind(); } }
/// <summary> /// Recursively moves permissions from the old (renamed) directory to the new one. /// </summary> /// <param name="oldDirectory">The old directory name.</param> /// <param name="newDirectory">The new directory name.</param> private void MovePermissions(string oldDirectory, string newDirectory) { if (!oldDirectory.StartsWith("/")) { oldDirectory = "/" + oldDirectory; } if (!oldDirectory.EndsWith("/")) { oldDirectory = oldDirectory + "/"; } if (!newDirectory.StartsWith("/")) { newDirectory = "/" + newDirectory; } if (!newDirectory.EndsWith("/")) { newDirectory = newDirectory + "/"; } foreach (string sub in provider.ListDirectories(oldDirectory)) { string subNew = newDirectory + sub.Substring(oldDirectory.Length); MovePermissions(sub, subNew); } AuthWriter.ClearEntriesForDirectory(provider, newDirectory); AuthWriter.ProcessDirectoryRenaming(provider, oldDirectory, newDirectory); }
/// <summary> /// Deletes the permissions of a directory. /// </summary> /// <param name="provider">The provider.</param> /// <param name="directory">The directory.</param> private static void DeletePermissions(IFilesStorageProviderV30 provider, string directory) { directory = NormalizeFullPath(directory); foreach (string sub in provider.ListDirectories(directory)) { DeletePermissions(provider, sub); } AuthWriter.ClearEntriesForDirectory(provider, directory); }
/// <summary> /// Deletes the permissions of a directory. /// </summary> /// <param name="provider">The provider.</param> /// <param name="directory">The directory.</param> private static void DeletePermissions(IFilesStorageProviderV40 provider, string directory) { directory = NormalizeFullPath(directory); foreach (string sub in provider.ListDirectories(directory)) { DeletePermissions(provider, sub); } AuthWriter authWriter = new AuthWriter(Collectors.CollectorsBox.GetSettingsProvider(provider.CurrentWiki)); authWriter.ClearEntriesForDirectory(provider, directory); }
/// <summary> /// Deletes the permissions of a directory. /// </summary> /// <param name="directory">The directory.</param> private void DeletePermissions(string directory) { if (!directory.StartsWith("/")) { directory = "/" + directory; } if (!directory.EndsWith("/")) { directory = directory + "/"; } foreach (string sub in provider.ListDirectories(directory)) { DeletePermissions(sub); } AuthWriter.ClearEntriesForDirectory(provider, directory); }
/// <summary> /// Recursively moves permissions from the old (renamed) directory to the new one. /// </summary> /// <param name="provider">The provider.</param> /// <param name="oldDirectory">The old directory.</param> /// <param name="newDirectory">The new directory.</param> private static void MovePermissions(IFilesStorageProviderV30 provider, string oldDirectory, string newDirectory) { oldDirectory = NormalizeFullPath(oldDirectory); newDirectory = NormalizeFullPath(newDirectory); // At this point the directory has been already renamed, // thus we must list on the new directory and construct the old name // Example: /directory/one/ renamed to /directory/two-two/ // List on /directory/two-two/ // dir1 // dir2 // oldSub = /directory/one/dir1/ foreach (string sub in provider.ListDirectories(newDirectory)) { string oldSub = oldDirectory + sub.Substring(newDirectory.Length); MovePermissions(provider, oldSub, sub); } AuthWriter.ClearEntriesForDirectory(provider, newDirectory); AuthWriter.ProcessDirectoryRenaming(provider, oldDirectory, newDirectory); }
protected void btnNewDirectory_Click(object sender, EventArgs e) { if (canCreateDirs) { txtNewDirectoryName.Text = txtNewDirectoryName.Text.Trim(); lblNewDirectoryResult.Text = ""; txtNewDirectoryName.Text = txtNewDirectoryName.Text.Trim('/'); AuthWriter authWriter = new AuthWriter(Collectors.CollectorsBox.GetSettingsProvider(currentWiki)); authWriter.ClearEntriesForDirectory(provider, CurrentDirectory + txtNewDirectoryName.Text + "/"); bool done = FilesAndAttachments.CreateDirectory(provider, CurrentDirectory, txtNewDirectoryName.Text); if (!done) { lblNewDirectoryResult.CssClass = "resulterror"; lblNewDirectoryResult.Text = Properties.Messages.CannotCreateNewDirectory; } else { txtNewDirectoryName.Text = ""; } rptItems.DataBind(); } }