forked from Github/Axter-Stash
Added advance menu option to UI
This commit is contained in:
@@ -62,17 +62,17 @@ def installModule(moduleName):
|
|||||||
# Note: Linux may first need : sudo apt install python3-pip
|
# Note: Linux may first need : sudo apt install python3-pip
|
||||||
# if error starts with "Command 'pip' not found"
|
# if error starts with "Command 'pip' not found"
|
||||||
# or includes "No module named pip"
|
# or includes "No module named pip"
|
||||||
results = os.popen(f"pip --version").read()
|
results = os.popen(f"pip --disable-pip-version-check --version").read()
|
||||||
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
||||||
results = os.popen(f"sudo apt install python3-pip").read()
|
results = os.popen(f"sudo apt install python3-pip").read()
|
||||||
results = os.popen(f"pip --version").read()
|
results = os.popen(f"pip --disable-pip-version-check --version").read()
|
||||||
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
||||||
return -1
|
return -1
|
||||||
if isFreeBSD():
|
if isFreeBSD():
|
||||||
print("Warning: installModule may NOT work on freebsd")
|
print("Warning: installModule may NOT work on freebsd")
|
||||||
pipArg = ""
|
pipArg = " --disable-pip-version-check"
|
||||||
if isDocker():
|
if isDocker():
|
||||||
pipArg = " --break-system-packages"
|
pipArg += " --break-system-packages"
|
||||||
results = os.popen(f"{sys.executable} -m pip install {moduleName}{pipArg}").read() # May need to be f"{sys.executable} -m pip install {moduleName}"
|
results = os.popen(f"{sys.executable} -m pip install {moduleName}{pipArg}").read() # May need to be f"{sys.executable} -m pip install {moduleName}"
|
||||||
results = results.strip("\n")
|
results = results.strip("\n")
|
||||||
if results.find("Requirement already satisfied:") > -1:
|
if results.find("Requirement already satisfied:") > -1:
|
||||||
|
|||||||
@@ -27,26 +27,36 @@
|
|||||||
return JSON.parse(AjaxData.responseJSON.data.runPluginOperation.replaceAll("'", "\""));
|
return JSON.parse(AjaxData.responseJSON.data.runPluginOperation.replaceAll("'", "\""));
|
||||||
}
|
}
|
||||||
var LocalDupReportExist = false;
|
var LocalDupReportExist = false;
|
||||||
|
var AdvanceMenuOptionUrl = "";
|
||||||
function GetLocalDuplicateReportPath(){
|
function GetLocalDuplicateReportPath(){
|
||||||
var LocalDuplicateReport = RunPluginDupFileManager("getLocalDupReportPath", "json");
|
var LocalDuplicateReport = RunPluginDupFileManager("getLocalDupReportPath", "json");
|
||||||
var LocalDuplicateReportPath = "file://" + LocalDuplicateReport.Path;
|
var LocalDuplicateReportPath = "file://" + LocalDuplicateReport.Path;
|
||||||
console.log(LocalDuplicateReportPath);
|
console.log(LocalDuplicateReportPath);
|
||||||
|
AdvanceMenuOptionUrl = LocalDuplicateReportPath.replace("DuplicateTagScenes.html", "DupFileManager/advance_options.html");
|
||||||
LocalDupReportExist = LocalDuplicateReport.LocalDupReportExist;
|
LocalDupReportExist = LocalDuplicateReport.LocalDupReportExist;
|
||||||
return LocalDuplicateReportPath;
|
return LocalDuplicateReportPath;
|
||||||
}
|
}
|
||||||
|
|
||||||
const PluginApi = window.PluginApi;
|
const PluginApi = window.PluginApi;
|
||||||
const React = PluginApi.React;
|
const React = PluginApi.React;
|
||||||
const GQL = PluginApi.GQL;
|
const GQL = PluginApi.GQL;
|
||||||
const { Button } = PluginApi.libraries.Bootstrap;
|
const { Button } = PluginApi.libraries.Bootstrap;
|
||||||
const { faEthernet } = PluginApi.libraries.FontAwesomeSolid;
|
const { faEthernet } = PluginApi.libraries.FontAwesomeSolid;
|
||||||
const { Link, NavLink, } = PluginApi.libraries.ReactRouterDOM;
|
const { Link, NavLink, } = PluginApi.libraries.ReactRouterDOM;
|
||||||
const ToolsMenuToolTip = "Show DupFileManager advance menu, which list additional tools and utilities.";
|
// ToolTip text
|
||||||
const ToolsMenuOptionButton = React.createElement(Link, { to: "/plugin/DupFileManager_ToolsAndUtilities", title: ToolsMenuToolTip }, React.createElement(Button, null, "DupFileManager Tools and Utilities"));
|
|
||||||
const ReportMenuButtonToolTip = "Main report menu for DupFileManager. Create and show duplicate files on an HTML report.";
|
|
||||||
const DupFileManagerReportMenuButton = React.createElement(Link, { to: "/plugin/DupFileManager", title: ReportMenuButtonToolTip }, React.createElement(Button, null, "DupFileManager Report Menu"));
|
|
||||||
const CreateReportButtonToolTip = "Tag duplicate files, and create a new duplicate file report listing all duplicate files and using existing DupFileManager plugin options selected.";
|
const CreateReportButtonToolTip = "Tag duplicate files, and create a new duplicate file report listing all duplicate files and using existing DupFileManager plugin options selected.";
|
||||||
const CreateReportNoTagButtonToolTip = "Create a new duplicate file report listing all duplicate files and using existing DupFileManager plugin options selected. Do NOT tag files.";
|
const CreateReportNoTagButtonToolTip = "Create a new duplicate file report listing all duplicate files and using existing DupFileManager plugin options selected. Do NOT tag files.";
|
||||||
|
const ToolsMenuToolTip = "Show DupFileManager advance menu, which list additional tools and utilities.";
|
||||||
const ShowReportButtonToolTip = "Open link to the duplicate file (HTML) report created in local path.";
|
const ShowReportButtonToolTip = "Open link to the duplicate file (HTML) report created in local path.";
|
||||||
|
const ReportMenuButtonToolTip = "Main report menu for DupFileManager. Create and show duplicate files on an HTML report.";
|
||||||
|
// Buttons
|
||||||
|
const DupFileManagerReportMenuButton = React.createElement(Link, { to: "/plugin/DupFileManager", title: ReportMenuButtonToolTip }, React.createElement(Button, null, "DupFileManager Report Menu"));
|
||||||
|
const ToolsMenuOptionButton = React.createElement(Link, { to: "/plugin/DupFileManager_ToolsAndUtilities", title: ToolsMenuToolTip }, React.createElement(Button, null, "DupFileManager Tools and Utilities"));
|
||||||
|
function GetShowReportButton(LocalDuplicateReportPath, ButtonText){return React.createElement("a", { href: LocalDuplicateReportPath, title: ShowReportButtonToolTip}, React.createElement(Button, null, ButtonText));}
|
||||||
|
function GetAdvanceMenuButton(){return React.createElement("a", { href: AdvanceMenuOptionUrl, title: "Open link to the advance duplicate tagged menu."}, React.createElement(Button, null, "Show Advance Duplicate Tagged Menu"));}
|
||||||
|
function GetCreateReportNoTagButton(ButtonText){return React.createElement(Link, { to: "/plugin/DupFileManager_CreateReportWithNoTagging", title: CreateReportNoTagButtonToolTip }, React.createElement(Button, null, ButtonText));}
|
||||||
|
function GetCreateReportButton(ButtonText){return React.createElement(Link, { to: "/plugin/DupFileManager_CreateReport", title: CreateReportButtonToolTip }, React.createElement(Button, null, ButtonText));}
|
||||||
|
|
||||||
const { LoadingIndicator, } = PluginApi.components;
|
const { LoadingIndicator, } = PluginApi.components;
|
||||||
const HomePage = () => {
|
const HomePage = () => {
|
||||||
var LocalDuplicateReportPath = GetLocalDuplicateReportPath();
|
var LocalDuplicateReportPath = GetLocalDuplicateReportPath();
|
||||||
@@ -55,19 +65,21 @@
|
|||||||
if (LocalDupReportExist)
|
if (LocalDupReportExist)
|
||||||
return (React.createElement("center", null,
|
return (React.createElement("center", null,
|
||||||
MyHeader,
|
MyHeader,
|
||||||
React.createElement("a", { href: LocalDuplicateReportPath, title: ShowReportButtonToolTip}, React.createElement(Button, null, "Show Duplicate-File Report")),
|
GetShowReportButton(LocalDuplicateReportPath, "Show Duplicate-File Report"),
|
||||||
React.createElement("p", null),
|
React.createElement("p", null),
|
||||||
React.createElement(Link, { to: "/plugin/DupFileManager_CreateReportWithNoTagging", title: CreateReportNoTagButtonToolTip }, React.createElement(Button, null, "Create New Report (NO Tagging)")),
|
GetAdvanceMenuButton(),
|
||||||
React.createElement("p", null),
|
React.createElement("p", null),
|
||||||
React.createElement(Link, { to: "/plugin/DupFileManager_CreateReport", title: CreateReportButtonToolTip }, React.createElement(Button, null, "Create New Report with Tagging")),
|
GetCreateReportNoTagButton("Create New Report (NO Tagging)"),
|
||||||
|
React.createElement("p", null),
|
||||||
|
GetCreateReportButton("Create New Report with Tagging"),
|
||||||
React.createElement("p", null),
|
React.createElement("p", null),
|
||||||
ToolsMenuOptionButton
|
ToolsMenuOptionButton
|
||||||
));
|
));
|
||||||
return (React.createElement("center", null,
|
return (React.createElement("center", null,
|
||||||
MyHeader,
|
MyHeader,
|
||||||
React.createElement(Link, { to: "/plugin/DupFileManager_CreateReportWithNoTagging", title: CreateReportNoTagButtonToolTip }, React.createElement(Button, null, "Create Duplicate-File Report (NO Tagging)")),
|
GetCreateReportNoTagButton("Create Duplicate-File Report (NO Tagging)"),
|
||||||
React.createElement("p", null),
|
React.createElement("p", null),
|
||||||
React.createElement(Link, { to: "/plugin/DupFileManager_CreateReport", title: CreateReportButtonToolTip }, React.createElement(Button, null, "Create Duplicate-File Report with Tagging")),
|
GetCreateReportButton("Create Duplicate-File Report with Tagging"),
|
||||||
React.createElement("p", null),
|
React.createElement("p", null),
|
||||||
ToolsMenuOptionButton
|
ToolsMenuOptionButton
|
||||||
));
|
));
|
||||||
@@ -77,10 +89,11 @@
|
|||||||
if (componentsLoading)
|
if (componentsLoading)
|
||||||
return (React.createElement(LoadingIndicator, {message: "Running task to create report. This may take a while. Please standby."}));
|
return (React.createElement(LoadingIndicator, {message: "Running task to create report. This may take a while. Please standby."}));
|
||||||
RunPluginDupFileManager("tag_duplicates_task");
|
RunPluginDupFileManager("tag_duplicates_task");
|
||||||
var LocalDuplicateReportPath = GetLocalDuplicateReportPath();
|
|
||||||
return (React.createElement("center", null,
|
return (React.createElement("center", null,
|
||||||
React.createElement("h1", null, "Report complete. Click [Show Report] to view report."),
|
React.createElement("h1", null, "Report complete. Click [Show Report] to view report."),
|
||||||
React.createElement("a", { href: LocalDuplicateReportPath, title: ShowReportButtonToolTip}, React.createElement(Button, null, "Show Report")),
|
GetShowReportButton(GetLocalDuplicateReportPath(), "Show Report"),
|
||||||
|
React.createElement("p", null),
|
||||||
|
GetAdvanceMenuButton(),
|
||||||
React.createElement("p", null), DupFileManagerReportMenuButton, React.createElement("p", null), ToolsMenuOptionButton
|
React.createElement("p", null), DupFileManagerReportMenuButton, React.createElement("p", null), ToolsMenuOptionButton
|
||||||
));
|
));
|
||||||
};
|
};
|
||||||
@@ -89,10 +102,11 @@
|
|||||||
if (componentsLoading)
|
if (componentsLoading)
|
||||||
return (React.createElement(LoadingIndicator, {message: "Running task to create report. Please standby."}));
|
return (React.createElement(LoadingIndicator, {message: "Running task to create report. Please standby."}));
|
||||||
RunPluginDupFileManager("createDuplicateReportWithoutTagging");
|
RunPluginDupFileManager("createDuplicateReportWithoutTagging");
|
||||||
var LocalDuplicateReportPath = GetLocalDuplicateReportPath();
|
|
||||||
return (React.createElement("center", null,
|
return (React.createElement("center", null,
|
||||||
React.createElement("h1", null, "Created HTML report without tagging. Click [Show Report] to view report."),
|
React.createElement("h1", null, "Created HTML report without tagging. Click [Show Report] to view report."),
|
||||||
React.createElement("a", { href: LocalDuplicateReportPath, title: ShowReportButtonToolTip}, React.createElement(Button, null, "Show Report")),
|
GetShowReportButton(GetLocalDuplicateReportPath(), "Show Report"),
|
||||||
|
React.createElement("p", null),
|
||||||
|
GetAdvanceMenuButton(),
|
||||||
React.createElement("p", null), DupFileManagerReportMenuButton, React.createElement("p", null), ToolsMenuOptionButton
|
React.createElement("p", null), DupFileManagerReportMenuButton, React.createElement("p", null), ToolsMenuOptionButton
|
||||||
));
|
));
|
||||||
};
|
};
|
||||||
@@ -103,17 +117,21 @@
|
|||||||
|
|
||||||
React.createElement("h3", {class:"submenu"}, "Report Options"),
|
React.createElement("h3", {class:"submenu"}, "Report Options"),
|
||||||
React.createElement("p", null),
|
React.createElement("p", null),
|
||||||
React.createElement(Link, { to: "/plugin/DupFileManager_CreateReportWithNoTagging", title: CreateReportNoTagButtonToolTip }, React.createElement(Button, null, "Create Report (NO Tagging)")),
|
GetCreateReportNoTagButton("Create Report (NO Tagging)"),
|
||||||
React.createElement("p", null),
|
React.createElement("p", null),
|
||||||
React.createElement(Link, { to: "/plugin/DupFileManager_CreateReport", title: CreateReportButtonToolTip }, React.createElement(Button, null, "Create Report (Tagging)")),
|
GetCreateReportButton("Create Report (Tagging)"),
|
||||||
React.createElement("p", null),
|
React.createElement("p", null),
|
||||||
DupFileManagerReportMenuButton,
|
DupFileManagerReportMenuButton,
|
||||||
React.createElement("p", null),
|
React.createElement("p", null),
|
||||||
|
GetShowReportButton(GetLocalDuplicateReportPath(), "Show Duplicate-File Report"),
|
||||||
|
React.createElement("p", null),
|
||||||
React.createElement(Link, { to: "/plugin/DupFileManager_deleteLocalDupReportHtmlFiles", title: "Delete local HTML duplicate file report." }, React.createElement(Button, null, "Delete Duplicate-File Report HTML Files")),
|
React.createElement(Link, { to: "/plugin/DupFileManager_deleteLocalDupReportHtmlFiles", title: "Delete local HTML duplicate file report." }, React.createElement(Button, null, "Delete Duplicate-File Report HTML Files")),
|
||||||
React.createElement("hr", {class:"dotted"}),
|
React.createElement("hr", {class:"dotted"}),
|
||||||
|
|
||||||
React.createElement("h3", {class:"submenu"}, "Tagged Duplicates Options"),
|
React.createElement("h3", {class:"submenu"}, "Tagged Duplicates Options"),
|
||||||
React.createElement("p", null),
|
React.createElement("p", null),
|
||||||
|
GetAdvanceMenuButton(),
|
||||||
|
React.createElement("p", null),
|
||||||
React.createElement(Link, { to: "/plugin/DupFileManager_deleteTaggedDuplicatesTask", title: "Delete scenes previously given duplicate tag (_DuplicateMarkForDeletion)." }, React.createElement(Button, null, "Delete Tagged Duplicates")),
|
React.createElement(Link, { to: "/plugin/DupFileManager_deleteTaggedDuplicatesTask", title: "Delete scenes previously given duplicate tag (_DuplicateMarkForDeletion)." }, React.createElement(Button, null, "Delete Tagged Duplicates")),
|
||||||
React.createElement("p", null),
|
React.createElement("p", null),
|
||||||
React.createElement(Link, { to: "/plugin/DupFileManager_deleteBlackListTaggedDuplicatesTask", title: "Delete scenes only in blacklist which where previously given duplicate tag (_DuplicateMarkForDeletion)." }, React.createElement(Button, null, "Delete Tagged Duplicates in Blacklist Only")),
|
React.createElement(Link, { to: "/plugin/DupFileManager_deleteBlackListTaggedDuplicatesTask", title: "Delete scenes only in blacklist which where previously given duplicate tag (_DuplicateMarkForDeletion)." }, React.createElement(Button, null, "Delete Tagged Duplicates in Blacklist Only")),
|
||||||
|
|||||||
@@ -62,17 +62,17 @@ def installModule(moduleName):
|
|||||||
# Note: Linux may first need : sudo apt install python3-pip
|
# Note: Linux may first need : sudo apt install python3-pip
|
||||||
# if error starts with "Command 'pip' not found"
|
# if error starts with "Command 'pip' not found"
|
||||||
# or includes "No module named pip"
|
# or includes "No module named pip"
|
||||||
results = os.popen(f"pip --version").read()
|
results = os.popen(f"pip --disable-pip-version-check --version").read()
|
||||||
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
||||||
results = os.popen(f"sudo apt install python3-pip").read()
|
results = os.popen(f"sudo apt install python3-pip").read()
|
||||||
results = os.popen(f"pip --version").read()
|
results = os.popen(f"pip --disable-pip-version-check --version").read()
|
||||||
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
||||||
return -1
|
return -1
|
||||||
if isFreeBSD():
|
if isFreeBSD():
|
||||||
print("Warning: installModule may NOT work on freebsd")
|
print("Warning: installModule may NOT work on freebsd")
|
||||||
pipArg = ""
|
pipArg = " --disable-pip-version-check"
|
||||||
if isDocker():
|
if isDocker():
|
||||||
pipArg = " --break-system-packages"
|
pipArg += " --break-system-packages"
|
||||||
results = os.popen(f"{sys.executable} -m pip install {moduleName}{pipArg}").read() # May need to be f"{sys.executable} -m pip install {moduleName}"
|
results = os.popen(f"{sys.executable} -m pip install {moduleName}{pipArg}").read() # May need to be f"{sys.executable} -m pip install {moduleName}"
|
||||||
results = results.strip("\n")
|
results = results.strip("\n")
|
||||||
if results.find("Requirement already satisfied:") > -1:
|
if results.find("Requirement already satisfied:") > -1:
|
||||||
|
|||||||
@@ -62,17 +62,17 @@ def installModule(moduleName):
|
|||||||
# Note: Linux may first need : sudo apt install python3-pip
|
# Note: Linux may first need : sudo apt install python3-pip
|
||||||
# if error starts with "Command 'pip' not found"
|
# if error starts with "Command 'pip' not found"
|
||||||
# or includes "No module named pip"
|
# or includes "No module named pip"
|
||||||
results = os.popen(f"pip --version").read()
|
results = os.popen(f"pip --disable-pip-version-check --version").read()
|
||||||
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
||||||
results = os.popen(f"sudo apt install python3-pip").read()
|
results = os.popen(f"sudo apt install python3-pip").read()
|
||||||
results = os.popen(f"pip --version").read()
|
results = os.popen(f"pip --disable-pip-version-check --version").read()
|
||||||
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
||||||
return -1
|
return -1
|
||||||
if isFreeBSD():
|
if isFreeBSD():
|
||||||
print("Warning: installModule may NOT work on freebsd")
|
print("Warning: installModule may NOT work on freebsd")
|
||||||
pipArg = ""
|
pipArg = " --disable-pip-version-check"
|
||||||
if isDocker():
|
if isDocker():
|
||||||
pipArg = " --break-system-packages"
|
pipArg += " --break-system-packages"
|
||||||
results = os.popen(f"{sys.executable} -m pip install {moduleName}{pipArg}").read() # May need to be f"{sys.executable} -m pip install {moduleName}"
|
results = os.popen(f"{sys.executable} -m pip install {moduleName}{pipArg}").read() # May need to be f"{sys.executable} -m pip install {moduleName}"
|
||||||
results = results.strip("\n")
|
results = results.strip("\n")
|
||||||
if results.find("Requirement already satisfied:") > -1:
|
if results.find("Requirement already satisfied:") > -1:
|
||||||
|
|||||||
@@ -62,17 +62,17 @@ def installModule(moduleName):
|
|||||||
# Note: Linux may first need : sudo apt install python3-pip
|
# Note: Linux may first need : sudo apt install python3-pip
|
||||||
# if error starts with "Command 'pip' not found"
|
# if error starts with "Command 'pip' not found"
|
||||||
# or includes "No module named pip"
|
# or includes "No module named pip"
|
||||||
results = os.popen(f"pip --version").read()
|
results = os.popen(f"pip --disable-pip-version-check --version").read()
|
||||||
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
||||||
results = os.popen(f"sudo apt install python3-pip").read()
|
results = os.popen(f"sudo apt install python3-pip").read()
|
||||||
results = os.popen(f"pip --version").read()
|
results = os.popen(f"pip --disable-pip-version-check --version").read()
|
||||||
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
if results.find("Command 'pip' not found") != -1 or results.find("No module named pip") != -1:
|
||||||
return -1
|
return -1
|
||||||
if isFreeBSD():
|
if isFreeBSD():
|
||||||
print("Warning: installModule may NOT work on freebsd")
|
print("Warning: installModule may NOT work on freebsd")
|
||||||
pipArg = ""
|
pipArg = " --disable-pip-version-check"
|
||||||
if isDocker():
|
if isDocker():
|
||||||
pipArg = " --break-system-packages"
|
pipArg += " --break-system-packages"
|
||||||
results = os.popen(f"{sys.executable} -m pip install {moduleName}{pipArg}").read() # May need to be f"{sys.executable} -m pip install {moduleName}"
|
results = os.popen(f"{sys.executable} -m pip install {moduleName}{pipArg}").read() # May need to be f"{sys.executable} -m pip install {moduleName}"
|
||||||
results = results.strip("\n")
|
results = results.strip("\n")
|
||||||
if results.find("Requirement already satisfied:") > -1:
|
if results.find("Requirement already satisfied:") > -1:
|
||||||
|
|||||||
@@ -2,13 +2,15 @@
|
|||||||
# By David Maisonave (aka Axter) Jul-2024 (https://www.axter.com/)
|
# By David Maisonave (aka Axter) Jul-2024 (https://www.axter.com/)
|
||||||
# Get the latest developers version from following link: https://github.com/David-Maisonave/Axter-Stash/tree/main/plugins/RenameFile
|
# Get the latest developers version from following link: https://github.com/David-Maisonave/Axter-Stash/tree/main/plugins/RenameFile
|
||||||
# Based on source code from https://github.com/Serechops/Serechops-Stash/tree/main/plugins/Renamer
|
# Based on source code from https://github.com/Serechops/Serechops-Stash/tree/main/plugins/Renamer
|
||||||
try:
|
|
||||||
import ModulesValidate
|
# To automatically install missing modules, uncomment the following lines of code.
|
||||||
ModulesValidate.modulesInstalled(["stashapp-tools", "requests"])
|
# try:
|
||||||
except Exception as e:
|
# import ModulesValidate
|
||||||
import traceback, sys
|
# ModulesValidate.modulesInstalled(["stashapp-tools", "requests"])
|
||||||
tb = traceback.format_exc()
|
# except Exception as e:
|
||||||
print(f"ModulesValidate Exception. Error: {e}\nTraceBack={tb}", file=sys.stderr)
|
# import traceback, sys
|
||||||
|
# tb = traceback.format_exc()
|
||||||
|
# print(f"ModulesValidate Exception. Error: {e}\nTraceBack={tb}", file=sys.stderr)
|
||||||
|
|
||||||
import os, sys, shutil, json, hashlib, pathlib, logging, time, traceback
|
import os, sys, shutil, json, hashlib, pathlib, logging, time, traceback
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
@@ -100,7 +102,7 @@ if len(tag_whitelist) > 0:
|
|||||||
handleExe = stash.pluginConfig['handleExe']
|
handleExe = stash.pluginConfig['handleExe']
|
||||||
openedfile = None
|
openedfile = None
|
||||||
if handleExe != None and handleExe != "" and os.path.isfile(handleExe):
|
if handleExe != None and handleExe != "" and os.path.isfile(handleExe):
|
||||||
ModulesValidate.modulesInstalled(["psutil"], silent=True)
|
# ModulesValidate.modulesInstalled(["psutil"], silent=True)
|
||||||
from openedFile import openedFile
|
from openedFile import openedFile
|
||||||
openedfile = openedFile(handleExe, stash)
|
openedfile = openedFile(handleExe, stash)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user