Vergelijk commits
28 Commits
Auteur | SHA1 | Datum | |
---|---|---|---|
32eba8f6fe | |||
9de7f7e096 | |||
4777681f2d | |||
e3ff45716a | |||
d973b37cb6 | |||
ef59e0a090 | |||
e4bc788538 | |||
23cfaf0c32 | |||
3a04e15579 | |||
221445573c | |||
0f17c8726d | |||
4723b6ab4d | |||
f2dbf59717 | |||
20d9dd83a6 | |||
bcc215238a | |||
e80d8e87f3 | |||
214bee4a2e | |||
a826d54f57 | |||
f83495cb02 | |||
1f31efbd31 | |||
48a2160836 | |||
ce6fcf3b4b | |||
0faa57ecb2 | |||
2982326cdc | |||
51a375bbb7 | |||
4c7472ef82 | |||
4067084676 | |||
538021335a |
@ -98,26 +98,6 @@ class ManufacturerInfoLongdesc extends AdminDetailsController
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns string which must be edited by editor
|
||||
*
|
||||
* @param \OxidEsales\Eshop\Core\Model\BaseModel $oObject object with field will be used for editing
|
||||
* @param string $sField name of editable field
|
||||
*
|
||||
* @return string
|
||||
* @deprecated underscore prefix violates PSR12, will be renamed to "getEditValue" in next major
|
||||
*/
|
||||
protected function _getEditValue($oManufacturer, $sField) // phpcs:ignore PSR2.Methods.MethodDeclaration.Underscore
|
||||
{
|
||||
$sEditObjectValue = '';
|
||||
|
||||
if ($oManufacturer and $oManufacturer->getId()) {
|
||||
$sEditObjectValue = $this->_processEditValue($oManufacturer->getFieldData(Constants::D3_OXMANUFACTURERS_LONGDESC_FIELDNAME));
|
||||
}
|
||||
|
||||
return $sEditObjectValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
|
@ -1,16 +1,18 @@
|
||||
[{$smarty.block.parent}]
|
||||
|
||||
[{assign var="oConfig" value=$oViewConf->getConfig()}]
|
||||
[{assign var="oManufacturer" value=$oView->getManufacturer()}]
|
||||
[{assign var="sShopURL" value=$oConfig->getConfigParam('sShopURL')}]
|
||||
[{assign var="description" value=$oManufacturer->d3GetLongdesc()}]
|
||||
[{if $oManufacturer && $oManufacturer->getId()}]
|
||||
[{assign var="oConfig" value=$oViewConf->getConfig()}]
|
||||
[{assign var="sShopURL" value=$oConfig->getConfigParam('sShopURL')}]
|
||||
[{assign var="description" value=$oManufacturer->d3GetLongdesc()}]
|
||||
|
||||
[{if $oManufacturer && $oConfig->getConfigParam('d3manufacturerinformation_showManufacturertextOnDetailsPage') && $description->rawValue|strip_tags|trim}]
|
||||
[{capture append="tabs"}]<a href="#manufacturertab" data-toggle="tab">[{oxmultilang ident="MANUFACTURER"}]</a>[{/capture}]
|
||||
[{capture append="tabsContent"}]
|
||||
<div id="manufacturertab" class="tab-pane[{if $blFirstTab}] active[{/if}]">
|
||||
[{oxeval var=$description}]
|
||||
</div>
|
||||
[{assign var="blFirstTab" value=false}]
|
||||
[{/capture}]
|
||||
[{if $oConfig->getConfigParam('d3manufacturerinformation_showManufacturertextOnDetailsPage') && $description->rawValue|strip_tags|trim}]
|
||||
[{capture append="tabs"}]<a href="#manufacturertab" class="nav-link[{if $blFirstTab}] active[{/if}]" data-toggle="tab">[{oxmultilang ident="MANUFACTURER"}]</a>[{/capture}]
|
||||
[{capture append="tabsContent"}]
|
||||
<div id="manufacturertab" class="tab-pane[{if $blFirstTab}] active[{/if}]">
|
||||
[{oxeval var=$description}]
|
||||
</div>
|
||||
[{assign var="blFirstTab" value=false}]
|
||||
[{/capture}]
|
||||
[{/if}]
|
||||
[{/if}]
|
19
CHANGELOG.md
19
CHANGELOG.md
@ -4,20 +4,33 @@ All notable changes to this project will be documented in this file.
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [unreleased](https://git.d3data.de/D3Public/MyModule/compare/1.0.2.0...rel_1.x)
|
||||
## [unreleased](https://git.d3data.de/D3Public/MyModule/compare/1.1.2.1...rel_1.1.x)
|
||||
|
||||
## [1.0.2.0](https://git.d3data.de/D3Public/MyModule/compare/1.0.1.0...1.0.2.0) - 2024-11-19
|
||||
## [1.1.2.1](https://git.d3data.de/D3Public/MyModule/compare/1.1.2.0...1.1.2.1) - 2024-11-21
|
||||
### Fixed
|
||||
- tab class for Wave based theme
|
||||
- encoding error when using the WYSIWYG editor
|
||||
|
||||
## [1.1.2.0](https://git.d3data.de/D3Public/MyModule/compare/1.1.1.0...1.1.2.0) - 2024-11-19
|
||||
### Fixed
|
||||
- show hidden save button
|
||||
|
||||
### Added
|
||||
- hide empty HTML elements content
|
||||
|
||||
## [1.0.1.0](https://git.d3data.de/D3Public/MyModule/compare/1.0.0.0...1.0.1.0) - 2024-11-18
|
||||
## [1.1.1.0](https://git.d3data.de/D3Public/MyModule/compare/1.1.0.0...1.1.1.0) - 2024-11-18
|
||||
### Fixed
|
||||
- installation instructions
|
||||
- show manufacturer link on article details page, if manufacturer hasn't an icon
|
||||
- prevent encoding HTML entities
|
||||
|
||||
### Added
|
||||
- display manufacturer content as additional tab on article details page
|
||||
- make displaying manufacturer tab on details page configurable
|
||||
|
||||
## [1.1.0.0](https://git.d3data.de/D3Public/MyModule/compare/1.0.0.0...1.1.0.0) - 2024-11-13
|
||||
### Added
|
||||
- installability OXID 6.2.3 - 6.5.x
|
||||
|
||||
## [1.0.0.0](https://git.d3data.de/D3Public/MyModule/releases/tag/1.0.0.0) - 2024-11-13
|
||||
- initial release
|
@ -1,45 +0,0 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace D3\ManufacturerInformation\Events;
|
||||
|
||||
|
||||
use OxidEsales\Eshop\Core\DatabaseProvider;
|
||||
|
||||
class Events
|
||||
{
|
||||
public static function activate()
|
||||
{
|
||||
self::d3AddLongdescColumnsToOxmanufacturers();
|
||||
}
|
||||
|
||||
public static function deActivate()
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @throws Exception
|
||||
*/
|
||||
protected static function d3AddLongdescColumnsToOxmanufacturers()
|
||||
{
|
||||
try {
|
||||
DatabaseProvider::getDb(DatabaseProvider::FETCH_MODE_ASSOC)->execute("
|
||||
ALTER TABLE oxmanufacturers ADD COLUMN D3DESCRIPTION TEXT NOT NULL DEFAULT '';
|
||||
ALTER TABLE oxmanufacturers ADD COLUMN D3DESCRIPTION_1 TEXT NOT NULL DEFAULT '';
|
||||
ALTER TABLE oxmanufacturers ADD COLUMN D3DESCRIPTION_2 TEXT NOT NULL DEFAULT '';
|
||||
ALTER TABLE oxmanufacturers ADD COLUMN D3DESCRIPTION_3 TEXT NOT NULL DEFAULT '';
|
||||
");
|
||||
} catch (\Exception $e) {
|
||||
if ((string)$e->getCode() === '1054') {
|
||||
return true;
|
||||
}
|
||||
throw $e;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
17
README.md
17
README.md
@ -2,8 +2,7 @@
|
||||
|
||||
#  Herstellerinformationen für OXID eShop
|
||||
|
||||
Dieses Modul fügt Ihren Herstellereinstellungen einen Tab zur
|
||||
detaillierten Beschreibung Ihrer Hersteller hinzu.
|
||||
Fügt die Möglichkeit zur Langtextbeschreibung den Hersteller hinzu
|
||||
|
||||
## Inhaltsverzeichnis
|
||||
|
||||
@ -16,17 +15,23 @@ Dieses Paket erfordert einen mit Composer installierten OXID eShop in einer in d
|
||||
|
||||
Öffnen Sie eine Kommandozeile und navigieren Sie zum Stammverzeichnis des Shops (Elternverzeichnis von source und vendor). Führen Sie die folgenden Befehle aus. Passen Sie die Pfadangaben an Ihre Installationsumgebung an.
|
||||
|
||||
|
||||
```bash
|
||||
composer require d3/manufacturerinformation:"~1.0.0"
|
||||
composer require d3/manufacturerinformation:"~1.1.0"
|
||||
```
|
||||
|
||||
Sofern nötig, bestätigen Sie bitte, dass Sie `package-name` erlauben, Code auszuführen.
|
||||
|
||||
Aktivieren Sie das Modul im Shopadmin unter "Erweiterungen -> Module".
|
||||
```bash
|
||||
./vendor/bin/oe-eshop-db_migrate migrations:migrate d3manufacturerinformation
|
||||
|
||||
Aktualisieren Sie anschließend die Datenbank-Views und leeren den Temp Ordner des Shops.
|
||||
./vendor/bin/oe-console o:m:i source/modules/d3/manufacturerinformation
|
||||
./vendor/bin/oe-console o:m:deact d3manufacturerinformation
|
||||
./vendor/bin/oe-console o:m:act d3manufacturerinformation
|
||||
|
||||
./vendor/bin/oe-eshop-db_views_generate
|
||||
```
|
||||
|
||||
Leeren Sie anschließend den Temp Ordner des Shops.
|
||||
|
||||
## Lizenz
|
||||
(Stand: 13.11.2024)
|
||||
|
@ -24,10 +24,13 @@
|
||||
"proprietary"
|
||||
],
|
||||
"require": {
|
||||
"php": ">=7.0",
|
||||
"oxid-esales/oxideshop-ce": "v6.0 - v6.5.6"
|
||||
"php": "~7.1 || ~8.0",
|
||||
"oxid-esales/oxideshop-ce": "v6.6.0 - v6.14.3"
|
||||
},
|
||||
"require-dev": {
|
||||
"oxid-esales/oxideshop-ce": "~6.14.0",
|
||||
"friendsofphp/php-cs-fixer": "^3.9"
|
||||
},
|
||||
"require-dev": {},
|
||||
"extra": {
|
||||
"oxideshop": {
|
||||
"blacklist-filter": [
|
||||
|
@ -17,7 +17,6 @@ declare(strict_types=1);
|
||||
|
||||
use D3\ManufacturerInformation\Application\Controller\Admin\ManufacturerInfoLongdesc;
|
||||
use D3\ManufacturerInformation\Application\Model\Constants;
|
||||
use D3\ManufacturerInformation\Events\Events;
|
||||
use D3\ManufacturerInformation\Modules\Application\Model\D3ManufacturerLongDesc;
|
||||
use D3\ManufacturerInformation\Modules\Application\Model\ManufacturerInfoList;
|
||||
use OxidEsales\Eshop\Application\Model\Manufacturer as OEManufacturer;
|
||||
@ -39,7 +38,7 @@ $aModule = [
|
||||
'en' => 'adds manufacturer information to the article list',
|
||||
],
|
||||
'thumbnail' => 'image-file.png',
|
||||
'version' => '1.0.2.0',
|
||||
'version' => '1.1.2.1',
|
||||
'author' => $logo.' Data Development (Inh.: Thomas Dartsch)',
|
||||
'email' => 'support@shopmodule.com',
|
||||
'url' => 'https://www.oxidmodule.com/',
|
||||
@ -50,10 +49,6 @@ $aModule = [
|
||||
OEManufacturer::class => D3ManufacturerLongDesc::class,
|
||||
OEManufacturerList::class => ManufacturerInfoList::class,
|
||||
],
|
||||
'events' => [
|
||||
'onActivate' => Events::class.'::activate',
|
||||
'onDeactivate' => Events::class.'::deActivate',
|
||||
],
|
||||
'templates' => [
|
||||
'd3manufacturerlongdesc.tpl' => 'd3/manufacturerinformation/Application/views/admin/tpl/d3manufacturer_longdesc.tpl',
|
||||
],
|
||||
|
63
migration/data/Version20241023154223.php
Normal file
63
migration/data/Version20241023154223.php
Normal file
@ -0,0 +1,63 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Copyright (c) D3 Data Development (Inh. Thomas Dartsch)
|
||||
*
|
||||
* For the full copyright and license information, please view
|
||||
* the LICENSE file that was distributed with this source code.
|
||||
*
|
||||
* https://www.d3data.de
|
||||
*
|
||||
* @copyright (C) D3 Data Development (Inh. Thomas Dartsch)
|
||||
* @author D3 Data Development - Max Buhe, Daniel Seifert <info@shopmodule.com>
|
||||
* @link https://www.oxidmodule.com
|
||||
*/
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace D3\ManufacturerInformation\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Doctrine\DBAL\Types\TextType;
|
||||
use Doctrine\Migrations\AbstractMigration;
|
||||
|
||||
/**
|
||||
* Auto-generated Migration: Please modify to your needs!
|
||||
*/
|
||||
final class Version20241023154223 extends AbstractMigration
|
||||
{
|
||||
public function getDescription(): string
|
||||
{
|
||||
return 'Adds the D3 manufacturer longdesc column';
|
||||
}
|
||||
|
||||
public function up(Schema $schema): void
|
||||
{
|
||||
$this->connection->getDatabasePlatform()->registerDoctrineTypeMapping('enum', 'string');
|
||||
|
||||
$this->d3AddLongdescColumnToOxmanufacturers($schema);
|
||||
}
|
||||
|
||||
public function down(Schema $schema): void
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
* @return void
|
||||
* @throws \Doctrine\DBAL\Schema\SchemaException
|
||||
*/
|
||||
public function d3AddLongdescColumnToOxmanufacturers(Schema $schema)
|
||||
{
|
||||
$table = !$schema->hasTable('oxmanufacturers') ?
|
||||
$schema->createTable('oxmanufacturers') :
|
||||
$schema->getTable('oxmanufacturers');
|
||||
|
||||
// Beschreibung
|
||||
if (!$table->hasColumn('D3DESCRIPTION')) {
|
||||
$table->addColumn('D3DESCRIPTION', (new TextType())->getName())
|
||||
->setLength($this->connection->getDatabasePlatform()::LENGTH_LIMIT_TEXT)
|
||||
->setNotnull(true);
|
||||
}
|
||||
}
|
||||
}
|
77
migration/data/Version20241028172608.php
Normal file
77
migration/data/Version20241028172608.php
Normal file
@ -0,0 +1,77 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Copyright (c) D3 Data Development (Inh. Thomas Dartsch)
|
||||
*
|
||||
* For the full copyright and license information, please view
|
||||
* the LICENSE file that was distributed with this source code.
|
||||
*
|
||||
* https://www.d3data.de
|
||||
*
|
||||
* @copyright (C) D3 Data Development (Inh. Thomas Dartsch)
|
||||
* @author D3 Data Development - Max Buhe, Daniel Seifert <info@shopmodule.com>
|
||||
* @link https://www.oxidmodule.com
|
||||
*/
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace D3\ManufacturerInformation\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Doctrine\DBAL\Types\TextType;
|
||||
use Doctrine\Migrations\AbstractMigration;
|
||||
|
||||
/**
|
||||
* Auto-generated Migration: Please modify to your needs!
|
||||
*/
|
||||
final class Version20241028172608 extends AbstractMigration
|
||||
{
|
||||
public function getDescription(): string
|
||||
{
|
||||
return 'Adds multilang tables for the D3 manufacturer longdesc';
|
||||
}
|
||||
|
||||
public function up(Schema $schema): void
|
||||
{
|
||||
$this->connection->getDatabasePlatform()->registerDoctrineTypeMapping('enum', 'string');
|
||||
|
||||
$this->d3AddLongdescMultilangColumnsToOxmanufacturers($schema);
|
||||
}
|
||||
|
||||
public function down(Schema $schema): void
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
* @return void
|
||||
* @throws \Doctrine\DBAL\Schema\SchemaException
|
||||
*/
|
||||
public function d3AddLongdescMultilangColumnsToOxmanufacturers(Schema $schema)
|
||||
{
|
||||
$table = !$schema->hasTable('oxmanufacturers') ?
|
||||
$schema->createTable('oxmanufacturers') :
|
||||
$schema->getTable('oxmanufacturers');
|
||||
|
||||
// lang 1
|
||||
if (!$table->hasColumn('D3DESCRIPTION_1')) {
|
||||
$table->addColumn('D3DESCRIPTION_1', (new TextType())->getName())
|
||||
->setLength($this->connection->getDatabasePlatform()::LENGTH_LIMIT_TEXT)
|
||||
->setNotnull(true);
|
||||
}
|
||||
|
||||
// lang 2
|
||||
if (!$table->hasColumn('D3DESCRIPTION_2')) {
|
||||
$table->addColumn('D3DESCRIPTION_2', (new TextType())->getName())
|
||||
->setLength($this->connection->getDatabasePlatform()::LENGTH_LIMIT_TEXT)
|
||||
->setNotnull(true);
|
||||
}
|
||||
|
||||
// lang 3
|
||||
if (!$table->hasColumn('D3DESCRIPTION_3')) {
|
||||
$table->addColumn('D3DESCRIPTION_3', (new TextType())->getName())
|
||||
->setLength($this->connection->getDatabasePlatform()::LENGTH_LIMIT_TEXT)
|
||||
->setNotnull(true);
|
||||
}
|
||||
}
|
||||
}
|
4
migration/migrations.yml
Normal file
4
migration/migrations.yml
Normal file
@ -0,0 +1,4 @@
|
||||
name: D3 manufacturerinformation
|
||||
migrations_namespace: D3\ManufacturerInformation\Migrations
|
||||
table_name: d3migrations_manufacturerinformation
|
||||
migrations_directory: data
|
Verwijs in nieuw issue
Block a user