From f5fed3c6d5b8e712b341d27e414b410217032238 Mon Sep 17 00:00:00 2001 From: mirzaev Date: Wed, 22 Feb 2023 08:52:25 +1000 Subject: [PATCH] =?UTF-8?q?=D0=BF=D0=B5=D1=80=D0=B2=D0=B0=D1=8F=20=D0=B2?= =?UTF-8?q?=D0=B5=D1=80=D1=81=D0=B8=D1=8F=20=D1=80=D0=B0=D0=B7=D1=80=D0=B0?= =?UTF-8?q?=D0=B1=D0=BE=D1=82=D0=B0=D0=BD=D0=B0=20=D0=B8=20=D0=B3=D0=BE?= =?UTF-8?q?=D1=82=D0=BE=D0=B2=D0=B0=20=D0=BA=20=D0=B8=D1=81=D0=BF=D0=BE?= =?UTF-8?q?=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- composer.json | 5 +- composer.lock | 623 +++++++++++++++++- "mirzaev/site/stdm/registry/system/\\" | 40 ++ .../system/controllers/index_controller.php | 79 +-- .../system/controllers/search_controller.php | 29 - .../registry/system/models/keys_model.php | 29 - .../registry/system/models/part_model.php | 85 +++ .../system/public/android-chrome-192x192.png | Bin 0 -> 13656 bytes .../system/public/android-chrome-512x512.png | Bin 0 -> 57598 bytes .../system/public/apple-touch-icon.png | Bin 0 -> 12308 bytes .../stdm/registry/system/public/css/main.css | 21 +- .../registry/system/public/favicon-16x16.png | Bin 0 -> 507 bytes .../registry/system/public/favicon-32x32.png | Bin 0 -> 1161 bytes .../stdm/registry/system/public/favicon.ico | Bin 0 -> 15406 bytes .../stdm/registry/system/public/index.php | 1 - .../registry/system/public/site.webmanifest | 1 + .../site/stdm/registry/system/views/head.html | 5 + .../stdm/registry/system/views/index.html | 8 + .../stdm/registry/system/views/manager.php | 35 +- .../stdm/registry/system/views/search.html | 13 +- 20 files changed, 839 insertions(+), 135 deletions(-) create mode 100644 "mirzaev/site/stdm/registry/system/\\" delete mode 100755 mirzaev/site/stdm/registry/system/controllers/search_controller.php delete mode 100644 mirzaev/site/stdm/registry/system/models/keys_model.php create mode 100644 mirzaev/site/stdm/registry/system/models/part_model.php create mode 100644 mirzaev/site/stdm/registry/system/public/android-chrome-192x192.png create mode 100644 mirzaev/site/stdm/registry/system/public/android-chrome-512x512.png create mode 100644 mirzaev/site/stdm/registry/system/public/apple-touch-icon.png create mode 100644 mirzaev/site/stdm/registry/system/public/favicon-16x16.png create mode 100644 mirzaev/site/stdm/registry/system/public/favicon-32x32.png create mode 100644 mirzaev/site/stdm/registry/system/public/favicon.ico create mode 100644 mirzaev/site/stdm/registry/system/public/site.webmanifest diff --git a/composer.json b/composer.json index 6c308c6..b5fc366 100755 --- a/composer.json +++ b/composer.json @@ -23,12 +23,13 @@ }, "require": { "php": "~8.2", - "ext-sodium": "~8.2", "mirzaev/minimal": "^2.0.x-dev", "mirzaev/arangodb": "^1.0.0", "triagens/arangodb": "~3.9.x-dev", "twig/twig": "^3.4", - "guzzlehttp/guzzle": "^7.5" + "guzzlehttp/guzzle": "^7.5", + "twig/markdown-extra": "^3.5", + "league/commonmark": "^2.3" }, "require-dev": { "phpunit/phpunit": "~9.5" diff --git a/composer.lock b/composer.lock index 3891039..ed2cb2b 100755 --- a/composer.lock +++ b/composer.lock @@ -4,8 +4,83 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "eb3974d37e16f19a4c1ca43c8ac73a61", + "content-hash": "b258b9722fd93eec6dac0f7fb73cd0fb", "packages": [ + { + "name": "dflydev/dot-access-data", + "version": "v3.0.2", + "source": { + "type": "git", + "url": "https://github.com/dflydev/dflydev-dot-access-data.git", + "reference": "f41715465d65213d644d3141a6a93081be5d3549" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/f41715465d65213d644d3141a6a93081be5d3549", + "reference": "f41715465d65213d644d3141a6a93081be5d3549", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^0.12.42", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", + "scrutinizer/ocular": "1.6.0", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "^4.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Dflydev\\DotAccessData\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Dragonfly Development Inc.", + "email": "info@dflydev.com", + "homepage": "http://dflydev.com" + }, + { + "name": "Beau Simensen", + "email": "beau@dflydev.com", + "homepage": "http://beausimensen.com" + }, + { + "name": "Carlos Frutos", + "email": "carlos@kiwing.it", + "homepage": "https://github.com/cfrutos" + }, + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com" + } + ], + "description": "Given a deep data structure, access data by dot notation.", + "homepage": "https://github.com/dflydev/dflydev-dot-access-data", + "keywords": [ + "access", + "data", + "dot", + "notation" + ], + "support": { + "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", + "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.2" + }, + "time": "2022-10-27T11:44:00+00:00" + }, { "name": "guzzlehttp/guzzle", "version": "7.5.0", @@ -337,6 +412,194 @@ ], "time": "2022-10-26T14:07:24+00:00" }, + { + "name": "league/commonmark", + "version": "2.3.9", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/commonmark.git", + "reference": "c1e114f74e518daca2729ea8c4bf1167038fa4b5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/c1e114f74e518daca2729ea8c4bf1167038fa4b5", + "reference": "c1e114f74e518daca2729ea8c4bf1167038fa4b5", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "league/config": "^1.1.1", + "php": "^7.4 || ^8.0", + "psr/event-dispatcher": "^1.0", + "symfony/deprecation-contracts": "^2.1 || ^3.0", + "symfony/polyfill-php80": "^1.16" + }, + "require-dev": { + "cebe/markdown": "^1.0", + "commonmark/cmark": "0.30.0", + "commonmark/commonmark.js": "0.30.0", + "composer/package-versions-deprecated": "^1.8", + "embed/embed": "^4.4", + "erusev/parsedown": "^1.0", + "ext-json": "*", + "github/gfm": "0.29.0", + "michelf/php-markdown": "^1.4 || ^2.0", + "nyholm/psr7": "^1.5", + "phpstan/phpstan": "^1.8.2", + "phpunit/phpunit": "^9.5.21", + "scrutinizer/ocular": "^1.8.1", + "symfony/finder": "^5.3 | ^6.0", + "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0", + "unleashedtech/php-coding-standard": "^3.1.1", + "vimeo/psalm": "^4.24.0 || ^5.0.0" + }, + "suggest": { + "symfony/yaml": "v2.3+ required if using the Front Matter extension" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.4-dev" + } + }, + "autoload": { + "psr-4": { + "League\\CommonMark\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com", + "role": "Lead Developer" + } + ], + "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and GitHub-Flavored Markdown (GFM)", + "homepage": "https://commonmark.thephpleague.com", + "keywords": [ + "commonmark", + "flavored", + "gfm", + "github", + "github-flavored", + "markdown", + "md", + "parser" + ], + "support": { + "docs": "https://commonmark.thephpleague.com/", + "forum": "https://github.com/thephpleague/commonmark/discussions", + "issues": "https://github.com/thephpleague/commonmark/issues", + "rss": "https://github.com/thephpleague/commonmark/releases.atom", + "source": "https://github.com/thephpleague/commonmark" + }, + "funding": [ + { + "url": "https://www.colinodell.com/sponsor", + "type": "custom" + }, + { + "url": "https://www.paypal.me/colinpodell/10.00", + "type": "custom" + }, + { + "url": "https://github.com/colinodell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/league/commonmark", + "type": "tidelift" + } + ], + "time": "2023-02-15T14:07:24+00:00" + }, + { + "name": "league/config", + "version": "v1.2.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/config.git", + "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/config/zipball/754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", + "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", + "shasum": "" + }, + "require": { + "dflydev/dot-access-data": "^3.0.1", + "nette/schema": "^1.2", + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^1.8.2", + "phpunit/phpunit": "^9.5.5", + "scrutinizer/ocular": "^1.8.1", + "unleashedtech/php-coding-standard": "^3.1", + "vimeo/psalm": "^4.7.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.2-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Config\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com", + "role": "Lead Developer" + } + ], + "description": "Define configuration arrays with strict schemas and access values with dot notation", + "homepage": "https://config.thephpleague.com", + "keywords": [ + "array", + "config", + "configuration", + "dot", + "dot-access", + "nested", + "schema" + ], + "support": { + "docs": "https://config.thephpleague.com/", + "issues": "https://github.com/thephpleague/config/issues", + "rss": "https://github.com/thephpleague/config/releases.atom", + "source": "https://github.com/thephpleague/config" + }, + "funding": [ + { + "url": "https://www.colinodell.com/sponsor", + "type": "custom" + }, + { + "url": "https://www.paypal.me/colinpodell/10.00", + "type": "custom" + }, + { + "url": "https://github.com/colinodell", + "type": "github" + } + ], + "time": "2022-12-11T20:36:23+00:00" + }, { "name": "mirzaev/arangodb", "version": "1.0.2", @@ -432,6 +695,205 @@ }, "time": "2022-11-03T06:09:32+00:00" }, + { + "name": "nette/schema", + "version": "v1.2.3", + "source": { + "type": "git", + "url": "https://github.com/nette/schema.git", + "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/schema/zipball/abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", + "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", + "shasum": "" + }, + "require": { + "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", + "php": ">=7.1 <8.3" + }, + "require-dev": { + "nette/tester": "^2.3 || ^2.4", + "phpstan/phpstan-nette": "^1.0", + "tracy/tracy": "^2.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0-only", + "GPL-3.0-only" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "https://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "https://nette.org/contributors" + } + ], + "description": "πŸ“ Nette Schema: validating data structures against a given Schema.", + "homepage": "https://nette.org", + "keywords": [ + "config", + "nette" + ], + "support": { + "issues": "https://github.com/nette/schema/issues", + "source": "https://github.com/nette/schema/tree/v1.2.3" + }, + "time": "2022-10-13T01:24:26+00:00" + }, + { + "name": "nette/utils", + "version": "v4.0.0", + "source": { + "type": "git", + "url": "https://github.com/nette/utils.git", + "reference": "cacdbf5a91a657ede665c541eda28941d4b09c1e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/utils/zipball/cacdbf5a91a657ede665c541eda28941d4b09c1e", + "reference": "cacdbf5a91a657ede665c541eda28941d4b09c1e", + "shasum": "" + }, + "require": { + "php": ">=8.0 <8.3" + }, + "conflict": { + "nette/finder": "<3", + "nette/schema": "<1.2.2" + }, + "require-dev": { + "jetbrains/phpstorm-attributes": "dev-master", + "nette/tester": "^2.4", + "phpstan/phpstan": "^1.0", + "tracy/tracy": "^2.9" + }, + "suggest": { + "ext-gd": "to use Image", + "ext-iconv": "to use Strings::webalize(), toAscii(), chr() and reverse()", + "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()", + "ext-json": "to use Nette\\Utils\\Json", + "ext-mbstring": "to use Strings::lower() etc...", + "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()", + "ext-xml": "to use Strings::length() etc. when mbstring is not available" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0-only", + "GPL-3.0-only" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "https://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "https://nette.org/contributors" + } + ], + "description": "πŸ›  Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, slug or strong password generating etc.", + "homepage": "https://nette.org", + "keywords": [ + "array", + "core", + "datetime", + "images", + "json", + "nette", + "paginator", + "password", + "slugify", + "string", + "unicode", + "utf-8", + "utility", + "validation" + ], + "support": { + "issues": "https://github.com/nette/utils/issues", + "source": "https://github.com/nette/utils/tree/v4.0.0" + }, + "time": "2023-02-02T10:41:53+00:00" + }, + { + "name": "psr/event-dispatcher", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/event-dispatcher.git", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", + "shasum": "" + }, + "require": { + "php": ">=7.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Standard interfaces for event handling.", + "keywords": [ + "events", + "psr", + "psr-14" + ], + "support": { + "issues": "https://github.com/php-fig/event-dispatcher/issues", + "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" + }, + "time": "2019-01-08T18:20:26+00:00" + }, { "name": "psr/http-client", "version": "1.0.1", @@ -868,6 +1330,89 @@ ], "time": "2022-11-03T14:55:06+00:00" }, + { + "name": "symfony/polyfill-php80", + "version": "v1.27.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-11-03T14:55:06+00:00" + }, { "name": "triagens/arangodb", "version": "3.9.x-dev", @@ -929,6 +1474,79 @@ }, "time": "2022-10-21T15:30:53+00:00" }, + { + "name": "twig/markdown-extra", + "version": "v3.5.1", + "source": { + "type": "git", + "url": "https://github.com/twigphp/markdown-extra.git", + "reference": "9474c89fd2787187a3809e5e964dfce2395ae5f0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/twigphp/markdown-extra/zipball/9474c89fd2787187a3809e5e964dfce2395ae5f0", + "reference": "9474c89fd2787187a3809e5e964dfce2395ae5f0", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "twig/twig": "^2.7|^3.0" + }, + "require-dev": { + "erusev/parsedown": "^1.7", + "league/commonmark": "^1.0|^2.0", + "league/html-to-markdown": "^4.8|^5.0", + "michelf/php-markdown": "^1.8|^2.0", + "symfony/phpunit-bridge": "^4.4.9|^5.0.9|^6.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.5-dev" + } + }, + "autoload": { + "psr-4": { + "Twig\\Extra\\Markdown\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com", + "homepage": "http://fabien.potencier.org", + "role": "Lead Developer" + } + ], + "description": "A Twig extension for Markdown", + "homepage": "https://twig.symfony.com", + "keywords": [ + "html", + "markdown", + "twig" + ], + "support": { + "source": "https://github.com/twigphp/markdown-extra/tree/v3.5.1" + }, + "funding": [ + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/twig/twig", + "type": "tidelift" + } + ], + "time": "2023-02-08T07:44:55+00:00" + }, { "name": "twig/twig", "version": "v3.5.1", @@ -2747,8 +3365,7 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": "~8.2", - "ext-sodium": "~8.2" + "php": "~8.2" }, "platform-dev": [], "plugin-api-version": "2.3.0" diff --git "a/mirzaev/site/stdm/registry/system/\\" "b/mirzaev/site/stdm/registry/system/\\" new file mode 100644 index 0000000..853459e --- /dev/null +++ "b/mirzaev/site/stdm/registry/system/\\" @@ -0,0 +1,40 @@ +{% extends "core.html" %} + +{% use "core.html" with css as core_css, body as core_body, js as core_js, js_init as core_js_init %} +{% use "header.html" with css as header_css, body as header_body, js as header_js, js_init as header_js_init %} + +{% block css %} +{{ block('core_css') }} +{{ block('header_css') }} +{% endblock %} + +{% block body %} +{{ block('core_body') }} +{{ block('header_body') }} + +
+ {% block main %} + {% include 'search.html' %} + {% if errors is not empty %}

Π–ΡƒΡ€Π½Π°Π»

{% endif %} + {% for error in errors %} + + {% endfor %} + {% endblock %} +
+ +{# {% include 'footer.html' %} #} +{% endblock %} + +{% block js %} +{{ block('core_js') }} +{{ block('header_js') }} +{% endblock %} + +{% block js_init %} +{{ block('core_js_init') }} +{{ block('header_js_init') }} +{% endblock %} diff --git a/mirzaev/site/stdm/registry/system/controllers/index_controller.php b/mirzaev/site/stdm/registry/system/controllers/index_controller.php index 397616e..9641826 100755 --- a/mirzaev/site/stdm/registry/system/controllers/index_controller.php +++ b/mirzaev/site/stdm/registry/system/controllers/index_controller.php @@ -5,7 +5,9 @@ declare(strict_types=1); namespace mirzaev\site\stdm\registry\controllers; // Π€Π°ΠΉΠ»Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° -use mirzaev\site\stdm\registry\controllers\core; +use mirzaev\site\stdm\registry\controllers\core, + mirzaev\site\stdm\registry\models\account_model as account, + mirzaev\site\stdm\registry\models\part_model as part; /** * ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ основной страницы @@ -15,57 +17,34 @@ use mirzaev\site\stdm\registry\controllers\core; */ final class index_controller extends core { - /** - * Главная страница - * - * @param array $parameters ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ запроса - */ - public function index(array $parameters = []): ?string - { - // Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹Ρ… ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΉ - $this->variables['include'] = [ - 'head' => ['self'], - 'body' => ['self'] - ]; + /** + * Главная страница + * + * @param array $parameters ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ запроса + */ + public function index(array $parameters = []): ?string + { + // Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΆΡƒΡ€Π½Π°Π»Π° ошибок + $this->variables['errors']['search'] = []; - // Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ Π±Π΅Π³ΡƒΡ‰Π΅ΠΉ строки - $this->variables['hotline'] = [ - 'id' => $this->variables['request']['id'] ?? 'hotline' - ]; + if (!empty($parameters['key']) && !empty($parameters['search'])) { + // ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ Π΄Π°Π½Π½Ρ‹Π΅ поиска - // Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π±Π΅Π³ΡƒΡ‰Π΅ΠΉ строки - $this->variables['hotline']['parameters'] = [ - // 'step' => 2 - ]; + if (account::authorization($parameters['key'], $this->variables['errors']['account'])) { + // Авторизован запрос - // Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ Π°Ρ‚Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² Π±Π΅Π³ΡƒΡ‰Π΅ΠΉ строки - $this->variables['hotline']['attributes'] = [ - - ]; - - // Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ элСмСнтов Π±Π΅Π³ΡƒΡ‰Π΅ΠΉ строки - $this->variables['hotline']['elements'] = [ - ['content' => '1'], - [ - 'tag' => 'article', - 'content' => '2' - ], - ['content' => '3'], - ['content' => '4'], - ['content' => '5'], - ['content' => '6'], - ['content' => '7'], - ['content' => '8'], - ['content' => '9'], - ['content' => '10'], - ['content' => '11'], - ['content' => '12'], - ['content' => '13'], - ['content' => '14'], - ['content' => '15'] - ]; - - // ГСнСрация прСдставлСния - return $this->view->render(DIRECTORY_SEPARATOR . 'index.html', $this->variables); + // Поиск Π΄Π°Π½Π½Ρ‹Ρ… запчасти ΠΈ запись Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ + $this->variables['result'] = part::search($parameters['search'], $this->variables['errors']['search'])->body ?? null; + } } + + // Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… + $this->variables['key'] = $parameters['key'] ?? ''; + $this->variables['search'] = $parameters['search'] ?? ''; + +/* var_dump($this->variables); die; */ + + // ГСнСрация прСдставлСния + return $this->view->render(DIRECTORY_SEPARATOR . 'index.html', $this->variables); + } } diff --git a/mirzaev/site/stdm/registry/system/controllers/search_controller.php b/mirzaev/site/stdm/registry/system/controllers/search_controller.php deleted file mode 100755 index 71ae890..0000000 --- a/mirzaev/site/stdm/registry/system/controllers/search_controller.php +++ /dev/null @@ -1,29 +0,0 @@ - - */ -final class search_controller extends core -{ - /** - * Поиск - * - * @param array $parameters ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ запроса - */ - public function search(array $parameters = []): ?string { - var_dump(account::authorization($parameters['key'], $this->variables['errors']['account'])); - return null; - } -} diff --git a/mirzaev/site/stdm/registry/system/models/keys_model.php b/mirzaev/site/stdm/registry/system/models/keys_model.php deleted file mode 100644 index 198f4f5..0000000 --- a/mirzaev/site/stdm/registry/system/models/keys_model.php +++ /dev/null @@ -1,29 +0,0 @@ - - */ -final class keys_model extends core -{ - /** - * ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ - */ - public const COLLECTION = 'keys'; -} diff --git a/mirzaev/site/stdm/registry/system/models/part_model.php b/mirzaev/site/stdm/registry/system/models/part_model.php new file mode 100644 index 0000000..e5d2941 --- /dev/null +++ b/mirzaev/site/stdm/registry/system/models/part_model.php @@ -0,0 +1,85 @@ + + */ +final class part_model extends core +{ + /** + * ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ + */ + public const COLLECTION = 'part'; + + /** + * ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ прСдставлСния + */ + public const COLLECTION_VIEW = 'search_part'; + + /** + * Поиск + * + * @param string $text ВСкст поиска + * @param array &$errors Π–ΡƒΡ€Π½Π°Π» ошибок + * + * @return ?_document Π˜Π½ΡΡ‚Π°Π½Ρ†ΠΈΡ запчасти, Ссли Π½Π°ΠΉΠ΄Π΅Π½Π° + */ + public static function search(string $text, array &$errors = []): ?_document { + try { + if (collection::init(static::$db->session, self::COLLECTION)) { + // Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ + + if ($part = collection::search(static::$db->session, sprintf( + << $e->getMessage(), + 'file' => $e->getFile(), + 'line' => $e->getLine(), + 'stack' => $e->getTrace() + ]; + } + + return null; + } + +} diff --git a/mirzaev/site/stdm/registry/system/public/android-chrome-192x192.png b/mirzaev/site/stdm/registry/system/public/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..f872da3c55f31cc1c4df15f339ba537b69f0d253 GIT binary patch literal 13656 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

ICu1An>=$V6W&cob?^6zC zys>BUvHK7cL*tbRd@0d8GQMt@c%{sll3i%l3%J*5zw=Luq7S)_DvtuUc}>oyIK>`j?feA%O>ci5=eB#j+K&-$$;|GJk9uO10KmwOMr` z_wzeOhK)$-?61B{dudBZA;qBt*AHIkA`Rr`R#Q3(9MIp)%`f;78{(BTN!UP`Rql03 z{X#V>kp9=l+wb|JREj=S*azu%Hnf#iMx{-5?!;NMvyL3wYu`7}+>eAKN^nMIZtrE- zdc>SBKLo%2S!f7?NbH#D{C4iqrp`b$AP{E`{}Q_t-@1!^p$4y)zYf{?5G3AC+q_NvnrQRD9c4ud6+f1_=W)QuG_oIjAkQY;!1f z=i^e4uNdN8!IdE~`VNnX(>S=Y_~zf?aOHg_dQqj6`QrqievOP5cnPG%)xjdI_VNQ3 zHEG&kgcu-X`dc}MgwvlI$G!!j2`YB2Y0akUrXVFS_QA_sB8LC?9QXwTNYZ-<4Ecfa z;{N@kZ!O0}yAJQ%usxUesgU7ws92}LW57i!p^}jBxuih zH!?{c<2*3k0Qu_OLza9*!Sj_&Y3Q41o^DD>Y>@)OD$?Z-l_jkp$-eV_~*nU+MbvtV*Hyi3L-lT|E6fXYHKXDonU#fYB z#_=q{Y!<$INSGAeWJ`4#J!yEU&o@owQks8XA>Yv6x>?l-kA>E43D_nHu%!)V}~+}2QeH6 z!!HXTutEK%C;YluCidBf@%55$V^SE_aCPaYvLY!2q&J^GRNGg+Z+iZyY#^i{q=nD7MNA?V9@E0)Y|O_GfkWi|5jD!aBk(y8YMc`$KX^C z&A%VtX!t7QP%KG%#L&&h6WU|4$C)r6p%uJ~neGr%+Vy%(tco|KS`y&fE~k-nBSkik&tss`evhs6krgOrov2 zzsiYnP+Zrl1^(uA9dg96vc)kWI&vyL_x{AZ!rqz-R$3!ReJWFlQiCTPXC2l0t`{Gl z(NCja!Dr}&F>oq~n4(VN9^afvESl7_(@~GU|0le+Mb<*~z14Rd9E)KDF6UImkc&m; zz@kPj8X)FNS3%=>Pvxi;L*_H1P^T2Nc#P0EDrqj znJ8C#s8T@(EZjuH2Yq^nSR4z%#APxm~W=n5xD zXscEIP}><&+dY+`52)cHh$mPuPH!~sF-qa$sw9mScx;gn;@`F9KZzchBM@o0*adAY zUtBB42DVTx_5vWt6d!xTFhD2P#&iSO4@pU<=^LbAeQqDDJTBZ5Vd~OmMnem5B@F=e zx6n+q3|hq}4*JSu5@xBIFJ_2mqQTCXTrLUjKxTQpP6DMu2rUR&DQ9~hAsZ6v7UkS5 z)BVITu>jdcfKYxC2Ej3LA4NK<$kpE$YY#0||0YEqIE|!32@Eu?2NM0sxYyP~rt$W- zoV_3{NcyLbSHYE*YZ~h9rJvz)-^M@|>yP;~$keHU#!a*z9V09ap+}gidI;ly^E75C zJcS;?9<|1k>KWJX5MIL@a?YqqlJvy;;=Yqpc(%;=KOQUf6JJX4zz_^=C@03w7t8R# z*_xA4hLc^7D2x<|U1y4Y=t5wW;)F9&F(r$hdo}Q1Qy%89DzZ=X)jQB!b+`;7Snlru zjt1OSlCS_8ZN**J;ehOS%%WT+q{>^re`{3xGu76-rMq+KW9QFeEA~qt1)#oEiz@5s zkYFJ`TY{cliX=qQhoXfePd_Wk?B@F9G+{4)Js94gq_Co!wW?W%h6qd8A}GE^KADt> zp_BpSqxT0cCw(q)8|-)G6uv?ga@JnZ{hS`{NHF)L*|Gh9Wa92!>E8sLVvVBIT*ZWd zS_zv*RAbDeoI_6h9et`@_tWbv5orgVpH7R_JfOLH@$dJ-|3oJW|FRf&(ZLyKtDB=5 zsj&N%T|>7nA&a!Ueok&7tS0zy!~NPzChYSNo=>FYSibTBq0>=S3TF849qx6Y*}J<@ zfmB+)4Z1|N7SFC$3lP|xfZi>WZZ69=T>R%&H_XrV9FEipK{(4UjizIm)nF*2RM; z{WJ{!0mBz-0_QE(3WzDTeAqy;^issg<8Jp5ZiuxWJ~79Be4Ppm{p!JroHoXcq6y~I z&B@lqjd$*zaj6wxbl< zNg@a2lg>Ghtp4a&Q6-@zF_x}3_3cKzaQIKakkKfKa}ZDWg5jcS16s z@;->LoM;)M@+;>xxMYle?NtTU>qMhSyeEa}?^!?oT^_sZG{@M1D>sskc!x}S<|6S= z9+?%;UHgqcCLNoE5D%ZiyoCDXNVA2mSvP9ZqAbCcX)dkjsxonOhqAzq5!UBFA^m6V zp5)GZ1JtuvkG8x;Xb9WcD_%DS3(e#YNcv%`h!R|^(|Z%2{)fKoV-%aYi%V|M+y%P9 z>5U9RQZ^AFoqc8%O4D|{+*!9teft0En6qR5Dl8!%WW~@4%nCng2Na9x6B*71`#bDC z<}^U4=+GLQ%k>$NNWH4dThuzR0zf(CS|3W<@@(~%Yk55cYCmf;uq_1_yCU_TEo05n z)MJ(B5+~klHK?}snHyvRfV7OGp&D3%*MNLq{zFR(42llq_Z9;y5w XWuDm*Of2~oUu&PQ))}jVy|A& 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 Dhd}(1 literal 0 HcmV?d00001 diff --git a/mirzaev/site/stdm/registry/system/public/css/main.css b/mirzaev/site/stdm/registry/system/public/css/main.css index 761ef39..636ceba 100755 --- a/mirzaev/site/stdm/registry/system/public/css/main.css +++ b/mirzaev/site/stdm/registry/system/public/css/main.css @@ -141,22 +141,25 @@ main>form#panel>label>svg * { color: var(--text-dark); } -main>form#panel>section#result.inactive { +main>form#panel>section#result:has(> svg) { cursor: not-allowed; } +main>h3 { + text-align: center; + margin: 30px 0 20px 0; +} + main>ol { - margin: 50px 100px; - font-size: 1.2rem; + margin: 0px; +} + +main>ol:last-of-type { + margin-bottom: 15px; } main>ol>li { - padding-left: 40px; - margin-bottom: 8px; -} - -main>ol>li::marker { - /* font-size: 1.3rem; */ + padding-left: 10px; } footer { diff --git a/mirzaev/site/stdm/registry/system/public/favicon-16x16.png b/mirzaev/site/stdm/registry/system/public/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..3be89eee53847faacc2bd1dccf0e21bce5b487fa GIT binary patch literal 507 zcmV z=W?p5jqs1fEdq>2V>ZWebGMiapyE=#ie9&m-Bbitt7Rr+CV+~I(ksgH8!Q$MqSuA} zqbRI4>l9=rphARCxiVtA>u`%sWG@TwhrHNJMHd51)5J%k1NZV0a@R$uiUynA2KxN) zYzqTp2!~4m&)X)T$ppip3F$`0d$rAWUf=NHJ}pC2bta}>(EBB~fP>R5@C3{ZrYTVI zeY%Ktvx`8`i^_8Yk$3>1m>(v2*KYM7Wn}mQB06oA8G1mVc7Y!QR6@^Ou8AXtRa8*f_k~dQrRPkFfr-Jw-nT_20342Q@mAMD3By*m#80``#~11chv*msyJ=p z*Lp@@BS@yKS0`Wy5CemM`h5EVXR$1>G%uIt^ xlO#3|>Bg+J@G$AR0Ye|a<#zu4F#Yy~e*!X;_hBcwx{m+=002ovPDHLkV1j}o=5_!8 literal 0 HcmV?d00001 diff --git a/mirzaev/site/stdm/registry/system/public/favicon-32x32.png b/mirzaev/site/stdm/registry/system/public/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..bf48c5ab196e10bd35527b2c93892da378921d4b GIT binary patch literal 1161 zcmV;41a|w0P)iovi6kd;=-|Np*PDM|$b2HUvc-h10Q^ZbknF|nPj@@21tc=gVi zGiS~`YdW3ognr}F{14z~7?_MFG#-yhr`N4r#I;L+!0C8_s--4H&%$K37}o-^761fK z-R3EEm!}C!*tTJzlQ+8pLZi{F1Y~6Z?W#}T5@i&ndszC1;nyUEX@Fd$FDN|&x{1iIy{~7>j zHEfF2sI}_&d`Z!k&q=<3 zTY@(09R`u0UPl3;E{H!I@lo)=C&7E2zLX}o@1+g5ZJ{O>0_b)794JYRYMZoL4eg%< z$RBjeM(rkpc%P(ByD#x^ZI@{e?0Mw4+wRdN-)}d&WH9R3Cw9rTW&bXSX82>?)r;O(Y@-nnU` zV@6&rHz{_JA(#+q9b%C|Z1Wo_+DJ<6u>k7mG)RSPmEzYA1Tmvy4qpe!v+bI_`vgGz zYgYVS>dKU#{ zYH+J1q+PM#5qr^{AH|mYO9Oxt=F%l@)2x_^7N+tlAcF=Tq1rYWfmn?u!>pQ~`sf+xUoQAc45;ZST3{hwq{W)mwZ*kRT%q>rdrOyKo=<=%=4uq< zZw0iXXWPl;2(eME{`+7p0BSkPg*qEjo%W9d(t7KxwE?Igq>d~87MKV6QvlY<_}h1W bJAi)ybC`+WWT>vi00000NkvXXu0mjfV)raA literal 0 HcmV?d00001 diff --git a/mirzaev/site/stdm/registry/system/public/favicon.ico b/mirzaev/site/stdm/registry/system/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..04fcf7f14db10a9308df9ee4b44e9a97532c7204 GIT binary patch literal 15406 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'/', 'index', 'index'); -$router->write('/search', 'search', 'search', 'POST'); // Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ядра $core = new core(namespace: __NAMESPACE__, router: $router); diff --git a/mirzaev/site/stdm/registry/system/public/site.webmanifest b/mirzaev/site/stdm/registry/system/public/site.webmanifest new file mode 100644 index 0000000..45dc8a2 --- /dev/null +++ b/mirzaev/site/stdm/registry/system/public/site.webmanifest @@ -0,0 +1 @@ +{"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} \ No newline at end of file diff --git a/mirzaev/site/stdm/registry/system/views/head.html b/mirzaev/site/stdm/registry/system/views/head.html index 23dc8d2..1e42d60 100755 --- a/mirzaev/site/stdm/registry/system/views/head.html +++ b/mirzaev/site/stdm/registry/system/views/head.html @@ -2,6 +2,11 @@ {% if head.title != empty %}{{head.title}}{% else %}РССстр запчастСй{% endif %} {% endblock %} + + + + + {% block meta %} diff --git a/mirzaev/site/stdm/registry/system/views/index.html b/mirzaev/site/stdm/registry/system/views/index.html index 64ea6e4..af1801a 100755 --- a/mirzaev/site/stdm/registry/system/views/index.html +++ b/mirzaev/site/stdm/registry/system/views/index.html @@ -15,6 +15,14 @@

{% block main %} {% include 'search.html' %} + {% if errors.account is not empty or errors.search is not empty %}

Π–ΡƒΡ€Π½Π°Π»

{% endif %} + {% for error in errors %} +
    + {% for data in error %} +
  1. {{ data.text }}
  2. + {% endfor %} +
+ {% endfor %} {% endblock %}
diff --git a/mirzaev/site/stdm/registry/system/views/manager.php b/mirzaev/site/stdm/registry/system/views/manager.php index 16c3698..2146bc1 100755 --- a/mirzaev/site/stdm/registry/system/views/manager.php +++ b/mirzaev/site/stdm/registry/system/views/manager.php @@ -4,22 +4,41 @@ declare(strict_types=1); namespace mirzaev\site\stdm\registry\views; +// Π€Π°ΠΉΠ»Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° use mirzaev\minimal\controller; -use Twig\Loader\FilesystemLoader; -use Twig\Environment as view; +// ΠŸΡ€Π΅ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€ для HTML +use Twig\Loader\FilesystemLoader, + Twig\Environment as view, + Twig\Extra\Markdown\MarkdownExtension, + Twig\Extra\Markdown\DefaultMarkdown, + Twig\Extra\Markdown\MarkdownRuntime, + Twig\RuntimeLoader\RuntimeLoaderInterface; /** * ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ прСдставлСний * - * @package mirzaev\site\stdm\registry\controllers + * @package mirzaev\stdm\registry\virus\controllers * @author Arsen Mirzaev Tatyano-Muradovich */ final class manager extends controller { - public function render(string $file, array $vars = []): ?string - { - // ГСнСрация прСдставлСния - return (new view(new FilesystemLoader(VIEWS)))->render($file, $vars); - } + public function render(string $file, array $vars = []): ?string + { + // Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ядра + $view = new view(new FilesystemLoader(VIEWS)); + + // Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ + $view->addExtension(new MarkdownExtension); + $view->addRuntimeLoader(new class implements RuntimeLoaderInterface { + public function load($class) { + if (MarkdownRuntime::class === $class) { + return new MarkdownRuntime(new DefaultMarkdown()); + } + } + }); + + // ГСнСрация прСдставлСния + return $view->render($file, $vars); + } } diff --git a/mirzaev/site/stdm/registry/system/views/search.html b/mirzaev/site/stdm/registry/system/views/search.html index b2fd810..26532e8 100644 --- a/mirzaev/site/stdm/registry/system/views/search.html +++ b/mirzaev/site/stdm/registry/system/views/search.html @@ -1,4 +1,4 @@ -
+ -
+
+ {% if result is not empty %} + {{ result|markdown_to_html }} + {% else %} + {{ result }} + {% endif %}