использовать выбор изображения joomla com_media в моем пользовательском компоненте - PullRequest
0 голосов
/ 01 апреля 2011

привет Я хочу использовать выбор изображения com_media в своем собственном компоненте. ссылка:

index.php?option=com_media&view=images&tmpl=component&
e_name=smallimage

изображение отправляется в редактор, а я хочу, чтобы его адрес был

<input class="inputbox" type="text" name="smallimage" id="smallimage" size="40" 
maxlength="255" value="<?php echo $row->smallimage; ?>" title=
"<?php echo JText::_('SMALLIMAGETIP' ); ?>" />

Я использую Joomla 1,5

есть предложения?

спасибо

Ответы [ 2 ]

3 голосов
/ 12 апреля 2011

Если вы используете Joomla 1.6, самый простой способ - позволить Joomla сделать всю работу за вас. Как?

Сначала вам нужно включить в форму xml (/model/forms/YOURFORM.xml) что-то подобное ...

<field name="imageurl" type="media" directory="CUSTOMDIRECTORY?"
                hide_none="1" label="COM_YOURCOMPONENT_IMG_LABEL"
                size="40"
                description="COM_YOURCOMPONENT_IMG_DESCRIPTION" />

Разве у вас нет getForm () в вашей модели?

public function getForm($data = array(), $loadData = true)
    {

        // Get the form.
        try {
            //throw new Exception(JText::_('JLIB_FORM_ERROR_NO_DATA'));
            $form = $this->loadForm('com_kfiles', 'files');
        } catch (Exception $e) {
            echo "e";
            echo 'Caught exception: ',  $e->getMessage(), "\n";
        }

        if (empty($form)) {
            return false;
        }


        return $form;
    }

По вашему мнению (/views/xxxx/view.html.php) вам необходимо загрузить форму

$this->form = $this->get('Form');

Наконец, вам нужно распечатать элемент шаблона только там, где вы хотите.

echo $this->form->getLabel('imageurl'); 
echo $this->form->getInput('imageurl');

Bye

1 голос
/ 02 апреля 2011

Не прямо, но вы можете обойти, как упомянуто здесь - Joomla Forum

...