Media field

Hier kun je vragen stellen over de nieuwste Joomla 3.x ontwikkelingen en ondervonden problemen melden.

Moderator: pe7er

Forum rules
Forum Regels
Post Reply
quadrolight
Joomla! Fledgling
Joomla! Fledgling
Posts: 2
Joined: Mon Aug 06, 2018 9:09 am

Media field

Post by quadrolight » Fri Jun 30, 2023 8:25 am

Ik wil een custom field maken extended van het standaard media type. De bedoeling is om de upload directory (die standaard images is) te kunnen wijzigen naar JPATH_ROOT/archief. Zo hoef ik niets te wijzigen aan de Joomla 3 core. Hoe kan ik dit verwezenlijken? Ik heb reeds een XML en PHP file aangemaakt.

// administrator/components.com_genealogie/models/forms/beeld.xml

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<form>
	<field 
		name="beeld" 
		type="archive" 
		label="Beeldmateriaal" 
		directory="doodsbrieven"
		preview="true"
	/>
</form>

// administrator/components/com_genealogie/models/fields/archive.php
<?php
defined('JPATH_BASE') or die;

use Joomla\CMS\Form\Form;
use Joomla\CMS\Form\FormField;
use Joomla\CMS\Form\FormHelper;

FormHelper::loadFieldClass('media');

class JFormFieldArchive extends JFormFieldMedia
{
	protected $type = 'Archive';

	protected function getInput()
	{
		$parentForm = Form::getInstance('com_genealogie.persoon');
		$folder = $parentForm->getValue('folder','');
		
		// werkt niet -> blijft steeds naar images gaan
		$this->element['directory'] = 'archief/'.$this->element['directory'].'/'.$folder;
				
		return parent::getInput();
	}
}
Last edited by pe7er on Fri Jun 30, 2023 11:40 am, edited 1 time in total.
Reason: reformatted code block for visability

Post Reply

Return to “Joomla! 3.x”