From 775d83b9dbfcaf06f03592f79bea084fc90d22e1 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Sat, 30 Sep 2023 17:40:10 +0000 Subject: [PATCH 1/7] add coverage upload --- .github/workflows/main.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 1dacd12..e1e05f8 100755 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -18,3 +18,5 @@ jobs: secrets: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} GH_PAT: ${{ secrets.GH_PAT }} + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} + From b3e288d674553ac09ab1fc20e579cb35312d4f03 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Sun, 1 Oct 2023 03:14:35 +0000 Subject: [PATCH 2/7] change db credentials --- tests/Bootstrap.php | 89 +++++++++++++++++++++++---------------------- 1 file changed, 46 insertions(+), 43 deletions(-) diff --git a/tests/Bootstrap.php b/tests/Bootstrap.php index f817e99..85f23f2 100755 --- a/tests/Bootstrap.php +++ b/tests/Bootstrap.php @@ -7,7 +7,10 @@ declare(strict_types=1); \error_reporting(\E_ALL); \setlocale(\LC_ALL, 'en_US.UTF-8'); -require_once __DIR__ . '/../vendor/autoload.php'; +if (\is_file(__DIR__ . '/../vendor/autoload.php')) { + require_once __DIR__ . '/../vendor/autoload.php'; +} + require_once __DIR__ . '/Autoloader.php'; use phpOMS\DataStorage\Database\DatabasePool; @@ -71,9 +74,9 @@ $CONFIG = [ 'db' => 'mysql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ + 'login' => 'test', /* db login name */ + 'password' => 'orange', /* db login password */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -81,9 +84,9 @@ $CONFIG = [ 'db' => 'mysql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ + 'login' => 'test', /* db login name */ + 'password' => 'orange', /* db login password */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -91,9 +94,9 @@ $CONFIG = [ 'db' => 'mysql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ + 'login' => 'test', /* db login name */ + 'password' => 'orange', /* db login password */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -101,9 +104,9 @@ $CONFIG = [ 'db' => 'mysql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ + 'login' => 'test', /* db login name */ + 'password' => 'orange', /* db login password */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -111,9 +114,9 @@ $CONFIG = [ 'db' => 'mysql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ + 'login' => 'test', /* db login name */ + 'password' => 'orange', /* db login password */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -121,9 +124,9 @@ $CONFIG = [ 'db' => 'mysql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ + 'login' => 'test', /* db login name */ + 'password' => 'orange', /* db login password */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -133,9 +136,9 @@ $CONFIG = [ 'db' => 'pgsql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ + 'login' => 'test', /* db login name */ + 'password' => 'orange', /* db login password */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -143,9 +146,9 @@ $CONFIG = [ 'db' => 'pgsql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ + 'login' => 'test', /* db login name */ + 'password' => 'orange', /* db login password */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -153,9 +156,9 @@ $CONFIG = [ 'db' => 'pgsql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ + 'login' => 'test', /* db login name */ + 'password' => 'orange', /* db login password */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -163,9 +166,9 @@ $CONFIG = [ 'db' => 'pgsql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ + 'login' => 'test', /* db login name */ + 'password' => 'orange', /* db login password */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -173,9 +176,9 @@ $CONFIG = [ 'db' => 'pgsql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ + 'login' => 'test', /* db login name */ + 'password' => 'orange', /* db login password */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -183,9 +186,9 @@ $CONFIG = [ 'db' => 'pgsql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ + 'login' => 'test', /* db login name */ + 'password' => 'orange', /* db login password */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -235,7 +238,7 @@ $CONFIG = [ 'port' => '1433', /* db host port */ 'login' => 'sa', /* db login name */ 'password' => 'c0MplicatedP@ssword', /* db login password */ - 'database' => 'oms', /* db name */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -245,7 +248,7 @@ $CONFIG = [ 'port' => '1433', /* db host port */ 'login' => 'sa', /* db login name */ 'password' => 'c0MplicatedP@ssword', /* db login password */ - 'database' => 'oms', /* db name */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -255,7 +258,7 @@ $CONFIG = [ 'port' => '1433', /* db host port */ 'login' => 'sa', /* db login name */ 'password' => 'c0MplicatedP@ssword', /* db login password */ - 'database' => 'oms', /* db name */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -265,7 +268,7 @@ $CONFIG = [ 'port' => '1433', /* db host port */ 'login' => 'sa', /* db login name */ 'password' => 'c0MplicatedP@ssword', /* db login password */ - 'database' => 'oms', /* db name */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -275,7 +278,7 @@ $CONFIG = [ 'port' => '1433', /* db host port */ 'login' => 'sa', /* db login name */ 'password' => 'c0MplicatedP@ssword', /* db login password */ - 'database' => 'oms', /* db name */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], @@ -285,7 +288,7 @@ $CONFIG = [ 'port' => '1433', /* db host port */ 'login' => 'sa', /* db login name */ 'password' => 'c0MplicatedP@ssword', /* db login password */ - 'database' => 'oms', /* db name */ + 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ 'datetimeformat' => 'Y-m-d H:i:s', ], From 56b87e31581f559b3a7263d20fdb1b082603bf46 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Sun, 1 Oct 2023 03:57:09 +0000 Subject: [PATCH 3/7] add autoloading path NO_CI --- tests/Autoloader.php | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/Autoloader.php b/tests/Autoloader.php index ec075a7..fcfdaa8 100755 --- a/tests/Autoloader.php +++ b/tests/Autoloader.php @@ -36,6 +36,7 @@ final class Autoloader __DIR__ . '/../', __DIR__ . '/../MainRepository/', __DIR__ . '/../../', + __DIR__ . '/../../Karaka/', ]; /** From 2067b1cb1e4418e8bd8eaef85fe4b48839befd74 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Sun, 1 Oct 2023 20:47:08 +0000 Subject: [PATCH 4/7] fix mssql login/password --- tests/Bootstrap.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/Bootstrap.php b/tests/Bootstrap.php index 85f23f2..ddc049d 100755 --- a/tests/Bootstrap.php +++ b/tests/Bootstrap.php @@ -236,7 +236,7 @@ $CONFIG = [ 'db' => 'mssql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ + 'login' => 'test', /* db login name */ 'password' => 'c0MplicatedP@ssword', /* db login password */ 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ @@ -246,7 +246,7 @@ $CONFIG = [ 'db' => 'mssql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ + 'login' => 'test', /* db login name */ 'password' => 'c0MplicatedP@ssword', /* db login password */ 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ @@ -256,7 +256,7 @@ $CONFIG = [ 'db' => 'mssql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ + 'login' => 'test', /* db login name */ 'password' => 'c0MplicatedP@ssword', /* db login password */ 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ @@ -266,7 +266,7 @@ $CONFIG = [ 'db' => 'mssql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ + 'login' => 'test', /* db login name */ 'password' => 'c0MplicatedP@ssword', /* db login password */ 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ @@ -276,7 +276,7 @@ $CONFIG = [ 'db' => 'mssql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ + 'login' => 'test', /* db login name */ 'password' => 'c0MplicatedP@ssword', /* db login password */ 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ @@ -286,7 +286,7 @@ $CONFIG = [ 'db' => 'mssql', /* db type */ 'host' => '127.0.0.1', /* db host address */ 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ + 'login' => 'test', /* db login name */ 'password' => 'c0MplicatedP@ssword', /* db login password */ 'database' => 'omt', /* db name */ 'weight' => 1000, /* db table prefix */ From f7c0edc91feef021c336c302fed30c87e3ff78d8 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Sun, 1 Oct 2023 22:48:36 +0000 Subject: [PATCH 5/7] use default redme text --- README.md | 76 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 75 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index da070d7..af4f138 100755 --- a/README.md +++ b/README.md @@ -1 +1,75 @@ -# Search +

Logo

+ +The Karaka software is a modular web application for small to mid sized companies that need CRM, ERP, Intranet and/or CMS functionalities and much more. + +With Karaka you have one partner who can provide many tools and software solutions you are used to at fair and reasonable prices even for small organizations and companies/startups. Our solutions can be used independently from each other or fully integrated with other solutions we provide. By choosing Karaka as your partner you'll be able to adjust your software based on the changes in your requirements without worrying about integration and workflow optimization. + +## Table of Contents + +- [Table of Contents](#table-of-contents) +- [Requirements](#requirements) + - [Developer tools](#developer-tools) +- [Installation](#installation) +- [Philosophy & Demo](#philosophy--demo) +- [Development status](#development-status) +- [Tech stack](#tech-stack) +- [Become a contributor](#become-a-contributor) +- [Misc](#misc) + +## Requirements + +* PHP 8.1 +* PHP extension: php8.1-dev php8.1-cli php8.1-common php8.1-mysql php8.1-pgsql php8.1-xdebug php8.1-opcache php8.1-pdo php8.1-sqlite php8.1-mbstring php8.1-curl php8.1-imap php8.1-bcmath php8.1-zip php8.1-dom php8.1-xml php8.1-phar php8.1-gd php-pear +* apache2 (recommended) or nginx +* mysql-server (recommended) or postgresql postgresql-contrib +* Tools: tesseract-ocr, pdftotext, pdftoppm +* Make sure that URL rewriting is active! + +### Developer tools + +* Php extension: xdebug +* Tools: Composer, Npm +* Composer tools: phpstan, phpunit, phpcs +* Npm tools: eslint + +## Installation + +Detailed installation instructions can be found at: + +* [Developer Setup](https://github.com/Karaka-Management/Developer-Guide/blob/develop/general/setup.md) +* [User Setup](https://github.com/Karaka-Management/User-Guide/blob/develop/setup/install.md) + +## Philosophy & Demo + +We believe software should support a business in it's daily tasks and growth in a very efficient way without frustration. In order to achieve this we constantly take feedback from our customers and expand and improve our software solutions. + +You can find a freely available online demo at https://demo.karaka.app (user: admin, pass: orange) without any registration or inquiry. + +## Development status + +Currently Karaka is still developing the first Alpha version. As soon as we have a running Beta version we are allowing external testers to use our software and a selected amount of inhouse developed modules. + +General updates can be found in our info section at https://jingga.app/info and developer updates can be found in our developer section at https://jingga.app/dev. In our developer section you can also check out the automatically generated reports such as code coverage, code style, static analysis etc. as well as our code style guide lines and developer documentation. + +* [Project Status](https://github.com/Karaka-Management/Organization-Guide/blob/master/Project/PROJECT.md) + +## Tech stack + +* Language: php, js, c/c++, c#, html, css, markdown, shell script +* Database: Maria/MySQL, PostgreSQL, MSSQL/SQLSrv, SQLite +* Webserver: apache2, nginx +* Cache: Redis, Memcached + +## Become a contributor + +Karaka has a very open culture and we always welcome new people who share our philosophy in providing create solutions which just work. You can find the development process description which also describes how to become a contributer in the [Organization documentation](https://github.com/Karaka-Management/Organization-Guide/blob/master/Processes/Development.md). + +## Misc + +* End-User documentation: https://github.com/Karaka-Management/Documentation +* Developer documentation: https://github.com/Karaka-Management/Developer-Guide +* Organization documentation: https://github.com/Karaka-Management/Organization-Guide +* Website: [https://jingga.app](https://jingga.app) +* Demo: [https://jingga.app](https://jingga.app) (user: admin, pass: orange) +* Dev: [https://jingga.app/dev](https://jingga.app/dev) +* Contact: info@jingga.app From 7ba3a7fb4f21513a1315291ad202d4daf3de0f17 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Mon, 2 Oct 2023 02:56:46 +0000 Subject: [PATCH 6/7] fix autoloading --- tests/Autoloader.php | 3 +-- tests/phpunit_default.xml | 1 + 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/Autoloader.php b/tests/Autoloader.php index fcfdaa8..ac516a8 100755 --- a/tests/Autoloader.php +++ b/tests/Autoloader.php @@ -36,7 +36,6 @@ final class Autoloader __DIR__ . '/../', __DIR__ . '/../MainRepository/', __DIR__ . '/../../', - __DIR__ . '/../../Karaka/', ]; /** @@ -80,7 +79,7 @@ final class Autoloader $class = \strtr($class, '_\\', '//'); if (\stripos($class, 'Web/Backend') !== false || \stripos($class, 'Web/Api') !== false) { - $class = \is_dir(__DIR__ . '/Web') ? $class : \str_replace('Web/', 'Karaka/Web/', $class); + $class = \is_dir(__DIR__ . '/Web') ? $class : \str_replace('Web/', 'MainRepository/Web/', $class); } $class2 = $class; diff --git a/tests/phpunit_default.xml b/tests/phpunit_default.xml index ad47a51..d350430 100755 --- a/tests/phpunit_default.xml +++ b/tests/phpunit_default.xml @@ -7,6 +7,7 @@ ../vendor* ../MainRepository* + ../Karaka* ../Admin/Install/Application* ../phpOMS* ../tests* From f92d37575c2b07d7a50d8d05b6572cbf9d14ca75 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Mon, 9 Oct 2023 22:06:39 +0000 Subject: [PATCH 7/7] update --- tests/Controller/ApiControllerTest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Controller/ApiControllerTest.php b/tests/Controller/ApiControllerTest.php index b8abe7d..74e7217 100755 --- a/tests/Controller/ApiControllerTest.php +++ b/tests/Controller/ApiControllerTest.php @@ -108,6 +108,6 @@ final class ApiControllerTest extends \PHPUnit\Framework\TestCase $request->setData('search', ':help introduction'); $this->module->routeSearch($request, $response); - self::assertGreaterThan(0, \count($response->get($request->uri->__toString()))); + self::assertGreaterThan(0, \count($response->getDataArray($request->uri->__toString()))); } }