Upload files to "Modules"

This commit is contained in:
2024-11-26 23:49:53 -05:00
parent ed7ce8148a
commit e86772ac89
4 changed files with 106 additions and 34 deletions

View File

@ -1,30 +1,11 @@
import os
import platform
from colorama import Fore, Style
from Assets.ascii_text_prompts import ascii_art, full_ascii_art, infinitei
from Assets.random_tip import get_random_tip_with_color
from Modules.global_commands import *
from Modules.search_for_word import search_for_word_in_directory, create_search_submenu
from Modules.common_ui import *
def clear_screen():
# Check the system platform and use the appropriate command
if platform.system().lower() == "windows":
os.system('cls') # Windows command to clear the screen
else:
os.system('clear') # Unix-based (Linux/macOS) command to clear the screen
def header(is_main_menu=False):
"""
Displays the header with optional full application details.
:param is_main_menu: Boolean to indicate whether to display full details.
"""
clear_screen()
if is_main_menu:
print(center_text(full_ascii_art)) # Full application name in ASCII art
print(center_text(infinitei)) # "Created By Me"
else:
print(center_text(ascii_art)) # Minimal header
print(center_text(get_random_tip_with_color()) + "\n")
def display_menu(menu_options):
while True:
@ -32,7 +13,8 @@ def display_menu(menu_options):
for key, value in menu_options.items():
print(f"[{key}] {value['name'].upper()}")
print("[0] Logout")
print("[NOTE] Analyst Notebook | [ABOUT] About Page\n") # Add global command options
print("[NOTE] Analyst Notebook | [ABOUT] About Page")
print("[SEARCH] Search for a Term\n") # Add a global search option
choice = input("Enter your choice: ").strip().lower()
@ -41,6 +23,18 @@ def display_menu(menu_options):
global_command_handler(choice) # Call the global command handler
continue # Restart the loop after handling global commands
# Handle search
if choice == "search":
term = input("Enter the term to search for: ").strip()
search_results = search_for_word_in_directory(".", term) # Search in the current directory
if search_results:
print(f"\n{Fore.GREEN}Search Results for '{term}':{Style.RESET_ALL}")
create_search_submenu(search_results) # Open dynamic submenu for results
else:
print(f"{Fore.RED}No results found for '{term}'.{Style.RESET_ALL}")
input("Press Enter to continue...")
continue
# Match the choice to a menu option
if choice in menu_options:
menu_options[choice]["submenu"]() # Call the submenu without arguments
@ -50,19 +44,10 @@ def display_menu(menu_options):
else:
print("Invalid choice. Please try again.")
def print_info(title, content):
header()
print("=" * 40)
print(f"{title.center(40)}")
print("=" * 40)
print(content)
input("\nPress Enter to return to the menu...")
def center_text(text):
terminal_width = os.get_terminal_size().columns
centered_lines = []
for line in text.splitlines():
centered_lines.append(line.center(terminal_width))
return "\n".join(centered_lines)
input("\nPress Enter to return to the menu...")