Skip to content

Commit

Permalink
Update two.py
Browse files Browse the repository at this point in the history
  • Loading branch information
wannabelikewind committed Oct 26, 2023
1 parent 08a314d commit cf27038
Showing 1 changed file with 37 additions and 20 deletions.
57 changes: 37 additions & 20 deletions two.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import subprocess
from tkinter import messagebox


def add_permissions(username, path, read_access, write_access, execute_access):
subprocess.run(["pkexec", "setfacl", '-x', f"u:{username}", path])
permission_string = ""
Expand All @@ -16,9 +17,11 @@ def add_permissions(username, path, read_access, write_access, execute_access):
except subprocess.CalledProcessError as e:
messagebox.showerror("Error", f"Failed to update permissions: {e}")


def flush_user(username, path):
subprocess.run(["pkexec", "setfacl", '-x', f"u:{username}", path])



def flush_all(path):
subprocess.run(["pkexec", "setfacl", '--remove-all', path])

Expand All @@ -30,34 +33,48 @@ def create_frame_2(parent_frame, ctk):
title = ctk.CTkLabel(two, text="File Permissions", font=ctk.CTkFont(size=15, weight="bold"))
title.pack(side=ctk.TOP, padx=10, pady=10)

label1 = ctk.CTkLabel(two, text="Enter the Username: ", font=("Ubuntu", 20), justify=ctk.LEFT)
label1.pack(side=ctk.TOP, padx=10, pady=10)
entry_username_frame = ctk.CTkFrame(two)
entry_username_frame.pack(side=ctk.TOP, padx=10, pady=10)

label1 = ctk.CTkLabel(entry_username_frame, text="Enter the Username: ", font=("Ubuntu", 20), justify=ctk.LEFT)
label1.pack(side=ctk.LEFT, padx=10, pady=10)

entry_username = ctk.CTkEntry(entry_username_frame, placeholder_text="", font=("Ubuntu", 20, "bold"),
border_width=2)
entry_username.pack(side=ctk.LEFT, padx=10, pady=10)

entry_path_frame = ctk.CTkFrame(two)
entry_path_frame.pack(side=ctk.TOP, padx=10, pady=10)

label2 = ctk.CTkLabel(two, text="Enter File Path: ", font=("Ubuntu", 20), justify=ctk.LEFT)
label2.pack(side=ctk.TOP, padx=10, pady=10)
label2 = ctk.CTkLabel(entry_path_frame, text="Enter File Path: ", font=("Ubuntu", 20), justify=ctk.LEFT)
label2.pack(side=ctk.LEFT, padx=10, pady=10)

entry_username = ctk.CTkEntry(two, placeholder_text="", font=("Ubuntu", 20, "bold"), border_width=2)
entry_username.pack(side=ctk.TOP, padx=10, pady=10)
entry_path = ctk.CTkEntry(entry_path_frame, placeholder_text="", font=("Ubuntu", 20, "bold"), border_width=2)
entry_path.pack(side=ctk.LEFT, padx=10, pady=10)

entry_path = ctk.CTkEntry(two, placeholder_text="", font=("Ubuntu", 20, "bold"), border_width=2)
entry_path.pack(side=ctk.TOP, padx=10, pady=10)
checkboxes_frame = ctk.CTkFrame(two)
checkboxes_frame.pack(side=ctk.TOP, padx=10, pady=10)

read_var = ctk.CTkCheckBox(two, text="Read", font=("Ubuntu", 20))
read_var.pack(side=ctk.TOP, padx=10, pady=10)
read_var = ctk.CTkCheckBox(checkboxes_frame, text="Read", font=("Ubuntu", 20))
read_var.pack(side=ctk.LEFT, padx=10, pady=10)

write_var = ctk.CTkCheckBox(two, text="Write", font=("Ubuntu", 20))
write_var.pack(side=ctk.TOP, padx=10, pady=10)
write_var = ctk.CTkCheckBox(checkboxes_frame, text="Write", font=("Ubuntu", 20))
write_var.pack(side=ctk.LEFT, padx=10, pady=10)

execute_var = ctk.CTkCheckBox(two, text="Execute", font=("Ubuntu", 20))
execute_var.pack(side=ctk.TOP, padx=10, pady=10)
execute_var = ctk.CTkCheckBox(checkboxes_frame, text="Execute", font=("Ubuntu", 20))
execute_var.pack(side=ctk.LEFT, padx=10, pady=10)

flush_all = ctk.CTkButton(two, text="FLUSH FOR ALL", font=("Ubuntu", 18), command=lambda: flush_all_func(entry_path))
flush_all.pack(side=ctk.TOP, padx=10, pady=10)
flush_all_btn = ctk.CTkButton(two, text="FLUSH FOR ALL", font=("Ubuntu", 18),
command=lambda: flush_all_func(entry_path))
flush_all_btn.pack(side=ctk.TOP, padx=10, pady=10)

flush_user = ctk.CTkButton(two, text="FLUSH FOR USER", font=("Ubuntu", 18), command=lambda: flush_user_func(entry_username, entry_path))
flush_user.pack(side=ctk.TOP, padx=10, pady=10)
flush_user_btn = ctk.CTkButton(two, text="FLUSH FOR USER", font=("Ubuntu", 18),
command=lambda: flush_user_func(entry_username, entry_path))
flush_user_btn.pack(side=ctk.TOP, padx=10, pady=10)

submit = ctk.CTkButton(two, text="SUBMIT", font=("Ubuntu", 18), command=lambda: add_permissions(entry_username, entry_path, read_var, write_var, execute_var))
submit = ctk.CTkButton(two, text="SUBMIT", font=("Ubuntu", 18),
command=lambda: add_permissions(entry_username, entry_path, read_var, write_var,
execute_var))
submit.pack(side=ctk.TOP, padx=10, pady=10)

return two

0 comments on commit cf27038

Please sign in to comment.