GithubHelp home page GithubHelp logo

atrocore / atrodam Goto Github PK

View Code? Open in Web Editor NEW
94.0 6.0 22.0 7.08 MB

AtroDAM is an open-source digital asset management system (DAM) of a new generation.

Home Page: https://atrodam.com

License: GNU General Public License v3.0

PHP 100.00%
dam digital-asset-management digitalassetmanagement digitalassets digital-assets mam mediaassetmanagement media-asset-management spa single-page-application

atrodam's Introduction

logo

What Is AtroDAM?

AtroDAM is an open-source digital asset management system (DAM), developed by AtroCore UG (haftungsbeschränkt), which is based on the AtroCore software platform. AtroDAM (as well as AtroCore) is distributed under GPLv3 License and is free. It has a lot of features right out-of-the-box and thus is an excellent tool for managing media assets as well as different kinds of other digital assets and their derivatives.

AtroDAM is a single page application (SPA) with an API-centric and service-oriented architecture (SOA). It has a flexible data model based on entities and relations of all kinds among them. AtroDAM allows you to gather, store, and organize all kinds of digital assets in one place.

banner

What Are the Advantages of AtroDAM?

  • Many out-of-the-box features
  • Free – 100% open source, licensed under GPLv3
  • REST API
  • Service-oriented architecture (SOA)
  • Responsive and user friendly UI
  • Configurable (entities, relations, layouts, labels, navigation, dashboards, etc.)
  • Extensible with modules
  • Includes advantages of AtroCore.

Features

AtroDAM comes with a lot of features directly out of the box, including:

  • different types of media and other digital assets;
  • private and public ownership of the digital assets;
  • mass upload;
  • advanced configuration and quality control;
  • automatic check for duplicates;
  • extracting of metadata information;
  • taxonomies – asset categories and tagging;
  • asset relations;
  • content management;
  • asset collections;
  • automatic versioning and creation of renditions (additional modules are needed);
  • and much more.

Want to learn more about the AtroDAM functions and its advantages for you? Please, visit our website!

Technology

AtroCore is based on EspoCRM and uses PHP7, backbone.js, and Composer.

Want to know more about AtroDAM technology? Please, visit our website!

Integrations

AtroDAM has a REST API and can be integrated with any third-party system. The out-of-the-box AtroDAM is integrated with AtroPIM, which is our another open source application for Product Information Management.

Please, ask, if you want to know more.

Documentation

Please visit our Help Center: https://help.atrocore.com/

Requirements

  • Dedicated (virtual) Linux-based server with root permissions.
  • Ubuntu as Operating System is recommended but not required.
  • PHP 7.4 (or above).
  • MySQL 5.5.3 (or above) or PostgreSQL 14.9 (or above).

Please note, system will definitely NOT work on a usual hosting, a managed server hosting should be checked on a case-by-case basis – with a high probability it will NOT work.

Installation

Installation Guide is available here.

Demo

License

AtroDAM is published under the GNU GPLv3 license.

Support

atrodam's People

Contributors

antebra avatar asapko avatar atrolex avatar goginyan avatar kariglu avatar marcus-at-localhost avatar rratsun avatar rzablodskyi avatar snechep avatar teg-kev avatar yurdm avatar zheravlik avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

atrodam's Issues

Non funziona la ricerca per tag

Abbiamo riscontrato che non funziona la ricerca per tag da un paio di giorni, allego immagine con esempio: a sinistra notate che la cartella Mare ha delle foto con il tag Pineto, mentre nella schermata a destra la ricerca per tag Pineto risulta vuota

esempio-errore

user interface & Users Logo/Icon validation error

Administration/User Interface add a company Logo raises a 500 Error
The assetvalidator method seems not to find the right type in the constructor

Log:
[2022-07-27T14:22:32.972937+00:00] Log.WARNING: E_WARNING: Undefined array key "storage" {"code":2,"message":"Undefined array key \"storage\"","file":"/var/www/pim.morach-technik.ch/vendor/atrocore/core/app/Espo/Entities/Attachment.php","line":63} [] [2022-07-27T14:22:32.972994+00:00] Log.WARNING: E_WARNING: Undefined property: stdClass::$parentType {"code":2,"message":"Undefined property: stdClass::$parentType","file":"/var/www/pim.morach-technik.ch/vendor/atrocore/dam/app/Services/Attachment.php","line":154} [] [2022-07-27T14:22:32.976481+00:00] Log.WARNING: E_WARNING: Undefined array key "storage" {"code":2,"message":"Undefined array key \"storage\"","file":"/var/www/pim.morach-technik.ch/vendor/atrocore/core/app/Espo/Entities/Attachment.php","line":63} [] [2022-07-27T14:22:32.977707+00:00] Log.ERROR: Uncaught Exception TypeError: "Dam\Core\AssetValidator::validateViaType(): Argument #1 ($type) must be of type string, null given, called in /var/www/pim.morach-technik.ch/vendor/atrocore/dam/app/Core/AssetValidator.php on line 63" at /var/www/pim.morach>

Delete Import Deletes all Assets

Passing a file with asset names to a delete import deletes all assets, not just those listed in the file.

Following issues importing assets, we attempted to delete assets already referenced in the file. The import file contained around 600 entries, which we knew about 100 existed. The import job was stopped after it had deleted around 3k assets. A second attempt using the same file was stopped after the number of assets deleted reached just under 1k.

FULLTEXT INDEX on Filenames with Underscores and Hyphens Doesn't Work as Expected

The search for partial strings in assets doesn't work as expected, since FULLTEXT treats filenames with underscores or hyphens as one word. Therefore, it matches the beginning of a string but not parts of it, as illustrated below:

image

image

See also: https://stackoverflow.com/questions/71016653/mysql-match-against-not-find-results-if-an-underscore-is-attached-to-the-search

Edit: after reading about the search (https://help.atrocore.com/#/atropim/user-guide/search-and-filtering?id=search) and using modifiers like % it kind of works but is not obvious to the average user. A note that modifiers are possible (depending if FULLTEXT INDEX is used or not) next to the search field or would be nice.

Missing `asset.private` field

Not sure if it is my problem, but since I was able to reproduce it in the demo, I'll post it here:

I set an asset to private:

image

When I tried to filter for private assets I got an Error 500 and this in the logs.

[2022-09-01T06:25:18.501115+00:00] Log.ERROR: API [GET]:/api/v1/:controller, Params:Array (     [controller] => Asset ) , InputData:  - SQLSTATE[42S22]: Column not found: 1054 Unknown column 'asset.private' in 'where clause' [] []
[2022-09-01T06:25:18.533951+00:00] Log.ERROR: Display Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'asset.private' in 'where clause', Code: 42S22 URL: /api/v1/Asset?select=preview%2Cname%2CproductsIds%2CproductsNames%2Ctype&maxSize=50&offset=0&sortBy=createdAt&asc=false&where%5B0%5D%5Btype%5D=isFalse&where%5B0%5D%5Battribute%5D=private [] []

Checking the DB the field is indeed missing.
The only reference in the DB Code I was able to find here:

$this->execute("ALTER TABLE `asset` DROP name_of_file, DROP code, DROP collection_id, CHANGE `private` private TINYINT(1) DEFAULT '1' NOT NULL COLLATE utf8mb4_unicode_ci, CHANGE `library_id` library_id VARCHAR(24) DEFAULT '1' COLLATE utf8mb4_unicode_ci");
- since it's a CHANGE it must have existed before?

I tested it in the demo instance and the filter call fails as well

image

Asset Import Failure when same file imported with different name

We have hit an issue importing images from a supplier feed. When creating the assets, the import job count matches the import file (397 created) but when you look at the assets created, there are only 311. There are no duplicates in the file there are no errors reported either in the UI or in logs.

Inconsistent behavior for filenames with dots

  1. have an asset with a dot in the filename
  2. Edit the asset entry (changing the description or something like that)
  3. Entry can't be saved
  4. Removing dot from filename works
chrome_2022-06-13_09-22-47.mp4

Uncaught Exception Error when trying to create a new Library

Hi,
When trying to create a new Library on the system, this error is thrown:
Uncaught Exception Error: "Class "Dam\Listeners\AbstractListener" not found" at /public_html/vendor/atrocore/dam/app/Repositories/Library.php line 107 {"exception":"[object] (Error(code: 0): Class \"Dam\\Listeners\\AbstractListener\" not found at /public_html/vendor/atrocore/dam/app/Repositories/Library.php:107)"} []

I believe that in dam/app/Repositories/Library.php, line 34 should be replaced with use Dam\Listeners\Metadata;
but in Metadata.php there isn't a const named CODE_PATTERN

Error message when creating the administrator

I receive an error message during the setup process. When I submit the form for the administrator following error occurs:
Screenshot at Jun 06 15-14-54

Logfile:
[2023-06-06T11:25:55.088651+00:00] Log.ERROR: Installer Error: Error while rebuilding database. See log file for details. | #0 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/DataManager.php(193): Espo\Core\DataManager->rebuildDatabase() #1 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Services/Installer.php(625): Espo\Core\DataManager->rebuild() #2 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Services/Installer.php(240): Espo\Services\Installer->prepareDataBase() #3 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Controllers/Installer.php(153): Espo\Services\Installer->createAdmin() #4 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/ControllerManager.php(154): Espo\Controllers\Installer->actionCreateAdmin() #5 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/Application.php(427): Espo\Core\ControllerManager->process() #6 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/Application.php(230): Espo\Core\Application->runInstallerApi() #7 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/Application.php(149): Espo\Core\Application->runApi() #8 /var/www/vhosts/mydam.com/dam.mydam.com/index.php(18): Espo\Core\Application->run() #9 {main} [] [] [2023-06-06T12:02:26.447238+00:00] Log.ALERT: Rebuild database fault: PDOException: SQLSTATE[HY000]: General error: 1283 Column 'sku' cannot be part of FULLTEXT index in /var/www/vhosts/mydam.com/dam.mydam.com/vendor/doctrine/dbal/src/Driver/PDO/Connection.php:72 Stack trace: #0 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/doctrine/dbal/src/Driver/PDO/Connection.php(72): PDO->query() #1 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/doctrine/dbal/src/Connection.php(1035): Doctrine\DBAL\Driver\PDO\Connection->query() #2 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Treo/Core/Utils/Database/Schema/Schema.php(103): Doctrine\DBAL\Connection->executeQuery() #3 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/DataManager.php(230): Treo\Core\Utils\Database\Schema\Schema->rebuild() #4 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/DataManager.php(193): Espo\Core\DataManager->rebuildDatabase() #5 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Services/Installer.php(625): Espo\Core\DataManager->rebuild() #6 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Services/Installer.php(240): Espo\Services\Installer->prepareDataBase() #7 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Controllers/Installer.php(153): Espo\Services\Installer->createAdmin() #8 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/ControllerManager.php(154): Espo\Controllers\Installer->actionCreateAdmin() #9 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/Application.php(427): Espo\Core\ControllerManager->process() #10 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/Application.php(230): Espo\Core\Application->runInstallerApi() #11 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/Application.php(149): Espo\Core\Application->runApi() #12 /var/www/vhosts/mydam.com/dam.mydam.com/index.php(18): Espo\Core\Application->run() #13 {main} Next Doctrine\DBAL\Driver\PDO\Exception: SQLSTATE[HY000]: General error: 1283 Column 'sku' cannot be part of FULLTEXT index in /var/www/vhosts/mydam.com/dam.mydam.com/vendor/doctrine/dbal/src/Driver/PDO/Exception.php:26 Stack trace: #0 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/doctrine/dbal/src/Driver/PDO/Connection.php(77): Doctrine\DBAL\Driver\PDO\Exception::new() #1 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/doctrine/dbal/src/Connection.php(1035): Doctrine\DBAL\Driver\PDO\Connection->query() #2 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Treo/Core/Utils/Database/Schema/Schema.php(103): Doctrine\DBAL\Connection->executeQuery() #3 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/DataManager.php(230): Treo\Core\Utils\Database\Schema\Schema->rebuild() #4 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/DataManager.php(193): Espo\Core\DataManager->rebuildDatabase() #5 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Services/Installer.php(625): Espo\Core\DataManager->rebuild() #6 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Services/Installer.php(240): Espo\Services\Installer->prepareDataBase() #7 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Controllers/Installer.php(153): Espo\Services\Installer->createAdmin() #8 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/ControllerManager.php(154): Espo\Controllers\Installer->actionCreateAdmin() #9 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/Application.php(427): Espo\Core\ControllerManager->process() #10 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/Application.php(230): Espo\Core\Application->runInstallerApi() #11 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/Application.php(149): Espo\Core\Application->runApi() #12 /var/www/vhosts/mydam.com/dam.mydam.com/index.php(18): Espo\Core\Application->run() #13 {main} Next Doctrine\DBAL\Exception\DriverException: An exception occurred while executing a query: SQLSTATE[HY000]: General error: 1283 Column 'sku' cannot be part of FULLTEXT index in /var/www/vhosts/mydam.com/dam.mydam.com/vendor/doctrine/dbal/src/Driver/API/MySQL/ExceptionConverter.php:119 Stack trace: #0 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/doctrine/dbal/src/Connection.php(1768): Doctrine\DBAL\Driver\API\MySQL\ExceptionConverter->convert() #1 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/doctrine/dbal/src/Connection.php(1707): Doctrine\DBAL\Connection->handleDriverException() #2 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/doctrine/dbal/src/Connection.php(1040): Doctrine\DBAL\Connection->convertExceptionDuringQuery() #3 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Treo/Core/Utils/Database/Schema/Schema.php(103): Doctrine\D... [] [] [2023-06-06T12:02:27.539241+00:00] Log.ERROR: Installer Error: Error while rebuilding database. See log file for details. | #0 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/DataManager.php(193): Espo\Core\DataManager->rebuildDatabase() #1 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Services/Installer.php(625): Espo\Core\DataManager->rebuild() #2 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Services/Installer.php(240): Espo\Services\Installer->prepareDataBase() #3 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Controllers/Installer.php(153): Espo\Services\Installer->createAdmin() #4 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/ControllerManager.php(154): Espo\Controllers\Installer->actionCreateAdmin() #5 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/Application.php(427): Espo\Core\ControllerManager->process() #6 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/Application.php(230): Espo\Core\Application->runInstallerApi() #7 /var/www/vhosts/mydam.com/dam.mydam.com/vendor/atrocore/core/app/Espo/Core/Application.php(149): Espo\Core\Application->runApi() #8 /var/www/vhosts/mydam.com/dam.mydam.com/index.php(18): Espo\Core\Application->run() #9 {main} [] []

Any idea how to solve this issue?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.