File: D:/HostingSpaces/SBogers10/ste.komma.pro/app/Trainings/Kms/_TrainingSection.php
<?php
///**
// *
// *
// * @author Komma <info@komma.pro>
// * @copyright (c) 2012-2016, Komma
// */
//
//namespace App\Trainings\Kms;
//
////The new object oriented attributes
//use App\Attributes\Attribute;
//use App\Attributes\ComponentArea;
//use App\Base\SectionWithSiteLogic;
//use App\Components\ComponentType\ComponentTypes;
//use App\Locations\Models\Location;
//use App\SteLanguages\Models\SteLanguage;
//use App\Trainings\Models\Training;
//use App\Trainings\Models\TrainingDay;
//use Komma\KMS\Core\Attributes\Models\SelectOption;
//use Komma\KMS\Core\Attributes\MultiSelect;
//use Komma\KMS\Core\Attributes\DatePicker;
//use Komma\KMS\Core\Attributes\Documents;
//use Komma\KMS\Core\Attributes\Numeric;
//use Komma\KMS\Core\Attributes\OnOff;
//use Komma\KMS\Core\Attributes\Select;
//use Komma\KMS\Core\Attributes\Seperator;
//use Komma\KMS\Core\Attributes\TextArea;
//use Komma\KMS\Core\Attributes\TextField;
//use Komma\KMS\Core\Attributes\Title;
//use Komma\KMS\Core\ModelService;
//use Komma\KMS\Core\ModelServiceInterface;
//use Komma\KMS\Core\Sections\Tabs\Collections\AllUsedLanguagesTabs;
//use Komma\KMS\Core\ValidationSet;
//use Illuminate\Database\Eloquent\Model;
//use Illuminate\Support\Collection;
//use Komma\KMS\Sites\SiteServiceInterface;
//use Komma\KMS\Users\Kms\KmsUserService;
//
//final class TrainingSection extends SectionWithSiteLogic
//{
// /** @var KmsUserService */
// protected $kmsUserService;
// /**
// * PageSection constructor.
// * @param $slug
// */
//// function __construct(Kms $kms, PageRepository $repository)
// function __construct($slug)
// {
// $this->kmsUserService = app(KmsUserService::class);
// $tabs = new AllUsedLanguagesTabs();
// parent::__construct($tabs, $slug);
// }
//
// /**
// * Generates the attributes for this section. They all must extend the App\Kms\Core\Attributes\Attribute class
// * This is the place where you need to setup your sections appearance. Just make sure you build an array of attributes
// * and put each attribute in a AbstractSectionTabItem with a SectionTabGroups constant to link them to a tab.
// *
// * @see PageRepository::saveModel()
// * @param Model $currentModel
// * @return Collection A collection of SectionTabItems
// */
// protected function generateAttributes(Model $currentModel = null): Collection
// {
//// \Log::info("PageSection::Generating attributes");
//
// //*****************************************************************************************\\
// //*** Generate the attributes ***\\
// //*****************************************************************************************\\
// $attributes = [];
//
// /** @var ModelServiceInterface $steLanguageService */
// $steLanguageService = app(ModelServiceInterface::class);
// $steLanguageService->setModelClassName(SteLanguage::class);
// $attributes[] = (new Select())
// ->setItems($steLanguageService->getOptionsForSelect()->toArray())
// ->setLabelText(__('kms/ste_languages.entity'))
// ->setReadOnly(true)
// ->mapValueFrom(Attribute::ValueFromModel, 'ste_language_id');
//
// $levelOptions = [];
// foreach (Training::$levels as $level) {
// $levelOptions[] = (new SelectOption())
// ->setValue($level)
// ->setHtmlContent($level)
// ->setContent($level);
// }
// $attributes[] = (new Select())
// ->setItems($levelOptions)
// ->setLabelText(__('kms/trainings.level'))
// ->setReadOnly(true)
// ->mapValueFrom(Attribute::ValueFromModel, 'level');
//
// //Build an array with attributes for each current site language
// $languageIndexedAttributes = $this->createAttributesFromExistingAttributeForAllUsedLanguagesBySites([
// (new TextField(__('kms/global.title')))
// ->setPlaceholderText(__('kms/global.enterTitle'))
// ->mapValueFrom(Attribute::ValueFromTranslationModel, 'name'),
//
// (new TextArea())
// ->setLabelText(__('kms/global.description'))
// ->setPlaceholderText(__('kms/global.enterDescription'))
// ->enableTinymceEditor()
// ->mapValueFrom(Attribute::ValueFromTranslationModel, 'description'),
//
// (new Seperator()),
//
// (new Title('Tabbladen')),
//
// (new TextField(__('kms/products.tabTitle') . ' 1'))
// ->setPlaceholderText(__('kms/products.enterTabTitle'))
// ->mapValueFrom(Attribute::ValueFromTranslationModel, 'tab_1_name'),
//
// (new TextArea())
// ->setLabelText(__('kms/products.tabDescription') . ' 1')
// ->setPlaceholderText(__('kms/products.enterTabDescription'))
// ->mapValueFrom(Attribute::ValueFromTranslationModel, 'tab_1_description'),
//
// (new TextField(__('kms/products.tabTitle') . ' 2'))
// ->setPlaceholderText(__('kms/products.enterTabTitle'))
// ->mapValueFrom(Attribute::ValueFromTranslationModel, 'tab_2_name'),
//
// (new TextArea())
// ->setLabelText(__('kms/products.tabDescription') . ' 2')
// ->setPlaceholderText(__('kms/products.enterTabDescription'))
// ->mapValueFrom(Attribute::ValueFromTranslationModel, 'tab_2_description'),
//
// (new TextField(__('kms/products.tabTitle') . ' 3'))
// ->setPlaceholderText(__('kms/products.enterTabTitle'))
// ->mapValueFrom(Attribute::ValueFromTranslationModel, 'tab_3_name'),
//
// (new TextArea())
// ->setLabelText(__('kms/products.tabDescription') . ' 3')
// ->setPlaceholderText(__('kms/products.enterTabDescription'))
// ->mapValueFrom(Attribute::ValueFromTranslationModel, 'tab_3_description'),
//
// (new TextField(__('kms/products.tabTitle') . ' 4'))
// ->setPlaceholderText(__('kms/products.enterTabTitle'))
// ->mapValueFrom(Attribute::ValueFromTranslationModel, 'tab_4_name'),
//
// (new TextArea())
// ->setLabelText(__('kms/products.tabDescription') . ' 4')
// ->setPlaceholderText(__('kms/products.enterTabDescription'))
// ->mapValueFrom(Attribute::ValueFromTranslationModel, 'tab_4_description'),
//
// (new Seperator()),
//
// (new Title('SEO')),
//
// (new TextField(__('kms/global.metaTitle')))
// ->setPlaceholderText(__('kms/global.enterTitle'))
// ->mapValueFrom(Attribute::ValueFromTranslationModel, 'meta_title'),
//
// (new TextArea())
// ->setLabelText(__('kms/global.metaDescription'))
// ->setPlaceholderText(__('kms/global.enterMetaDescription'))
// ->mapValueFrom(Attribute::ValueFromTranslationModel, 'meta_description'),
// ]);
//
// //Return all attributes as a collection
// return collect(array_merge($attributes, $languageIndexedAttributes));
// }
//
//
// /**
// * This method will stop the load entities of the kmsSiteSection
// *
// * @return array
// *
// */
// public function loadEntities(){
// return [];
// }
//}