public void Execute(string[] args, User user) { if (args.Length != 2) { Output.WriteError("Invalid arguments!\n"); return; } switch (args[1]) { case "..": if (FSManager.PresentWorkingDirectory() != "~/") { FSManager.ChangeDirectory(".."); return; } else { return; } case "/": FSManager.ChangeDirectory("/"); break; default: if (!FSManager.ChangeDirectory(args[1])) { return; } if (FSManager.CatFile("folder.sys") != User.currentUser.ToString()) { FSManager.ChangeDirectory(".."); Output.WriteError("You don't have permission to access this folder!\n"); } break; } /* * if (args[1] == ".." && FSManager.PresentWorkingDirectory() != "~/") * { * FSManager.ChangeDirectory(".."); * return; * } * if (args[1] == ".." && FSManager.PresentWorkingDirectory() == "~/") * return; * bool undo = FSManager.ChangeDirectory(args[1]); * if (!((FSManager.CatFile("folder.sys") == user.userID.ToString() && FSManager.GetFilePerms("folder.sys").or == true) || FSManager.GetFilePerms("folder.sys").ar == true || user == User.FetchUserID(0))) * { * Output.WriteError("You don't have permission to enter this folder!\n"); * FSManager.ChangeDirectory(".."); * return; * } * if (undo&&args[1]!="/") * { * FSManager.ChangeDirectory(".."); * FSManager.ChangeDirectory(args[1]); * }*/ }
public void Execute(string[] args, User user) { if (!((FSManager.CatFile("folder.sys") == user.userID.ToString() && FSManager.GetFilePerms("folder.sys").or == true) || FSManager.GetFilePerms("folder.sys").ar == true || user == User.FetchUserID(0))) { try { Output.WriteError($"You don't have permission to read the contents of this folder! You need permission from {User.FetchUserID(int.Parse(FSManager.CatFile("folder.sys"))).name} to access this folder!\n"); } catch { Output.WriteError("You don't have permission to read the contents of this folder!"); } return; } FSManager.GetChildren(); }
public void Execute(string[] args, User user) { if (args.Length != 2) { Output.WriteError("Invalid arguments!\n"); return; } if ((FSManager.GetFilePerms(args[1]).or == true && FSManager.GetFilePerms(args[1]).owner == user.userID) || FSManager.GetFilePerms(args[1]).ar == true || user.executeUserID == 0) { Output.Write($"{FSManager.CatFile(args[1])}\n"); } else { Output.WriteError("You don't have permission to read this file!\n"); } }
public void Execute(string[] args, User user) { if (args.Length != 2) { Output.WriteError("Invalid arguments!\n"); return; } Output.WriteDebug("Is user owner?: " + (FSManager.CatFile("folder.sys") == user.userID.ToString()).ToString() + "\n"); Output.WriteDebug("OW: " + (FSManager.GetFilePerms("folder.sys").ow == true).ToString() + "\n"); Output.WriteDebug("AW: " + (FSManager.GetFilePerms("folder.sys").aw == true).ToString() + "\n"); Output.WriteDebug("ID: " + user.userID.ToString() + "\n"); Output.WriteDebug("Folder owner: " + FSManager.CatFile("folder.sys") + "\n"); if ((FSManager.CatFile("folder.sys") == user.userID.ToString() && FSManager.GetFilePerms("folder.sys").ow == true) || FSManager.GetFilePerms("folder.sys").aw == true || user == User.FetchUserID(0)) { FSManager.AddFolder(args[1], User.FetchUserID(User.currentUser)); } else { Output.WriteError("You dont have permission to make a folder here!\n"); } }