Custom elements in standard palette Contao - contao

Iam using oneo custom elements .I need to add a field for content.Please check my code
<?php
return array(
'label' => array(
'en' => array('Feature boxe', 'Create an area with text, image/video and background image'),
'de' => array('Feature-Box', 'Erzeugt einen Bereich mit Text, Bild/Video und Hintergrundbild'),
),
'types' => array('content'),
'standardFields' => array('cssID', 'headline'),
'fields' => array(
array(
'inputType' => 'group',
'label' => array(
'en' => array('Image settings'),
'de' => array('Bildeinstellungen'),
),
),
'image' => array(
'label' => array(
'en' => array('Feature image or video', 'Choose an image or multiple video files.'),
'de' => array('Feature-Bild oder -Video', 'Wählen Sie ein Bild oder mehrere Videodateien aus.'),
),
),
);
The new field is appear in a new palette. But I need to add the new one in the same palette as cssID resides.Is it possible ???

I think you mean RockSolid Custom Elements. And no, that is not possible. Custom fields can only be added in the standard group of the custom element - or to custom groups that you define yourself.

Related

I want to list video from a list of channel

With youtube API, i would like to list video not only for one channel but from a list of channel,
with listSearch command it would be something like that ? but it's dont work ...
$searchResponse = $youtube->search->listSearch('id,snippet', array(
'maxResults' => _MAX_,
'type' => "video",
'order' => 'date',
"channelId" => "id_channel_1,id_channel_2, ..."
));

Zend Framework 2 Form Element Label No Escape

I would like to know how to disable escaping on Form Checkbox Element label ?
I would like to have my label html, this is my current code :
$score = new \Zend\Form\Element\MultiCheckbox('score');
$score->setLabel('Score');
$score->setOptions(array('value_options' => array(1 => '<b>Test 1</b>', 2 => '<b>Test 2</b>')));
$score->setAttributes(array('escape' => false));
$this->add($score);
$score->setLabelOptions(array('disable_html_escape' => true));
You don't have a way to short-circuit the HTML escaper. The code on the Multicheckbox view helper does not allow for a conditional escape. You would need to create your own view Helper in order to render the HTML.
If all you're looking to do is set the labels to bold, however, you can accomplish that with CSS. The 'value_options' option can be an array of arrays where the second level contains options for each individual input in the Multicheckbox. For example:
'value_coptions' => array(
'test_1' => array(
'value' => '1',
'label' => 'Test 1',
'label_attributes' => array( 'style' => 'font-weight: bold' ),
'selected' => true,
),
),

Unknown record property / related component with multi refs to one table

in model definition
$this->hasMany('Photo', array(
'refClass' => 'StyleLangHasPhoto',
'local' => 'style_lang_id',
'foreign' => 'photo_id'));
$this->hasMany('Photo as Preview', array(
'refClass' => 'StyleLangHasPreviewPhoto',
'local' => 'style_lang_id',
'foreign' => 'photo_id'));
but getter getPreview and even $this->_get('Preview') throws Unknown record property / related component "Preview" on "StyleLang"
i've try to make like this
$this->hasMany('Photo as Slide', array(
'refClass' => 'StyleLangHasPhoto',
'local' => 'style_lang_id',
'foreign' => 'photo_id'));
$this->hasMany('Photo as Preview', array(
'refClass' => 'StyleLangHasPreviewPhoto',
'local' => 'style_lang_id',
'foreign' => 'photo_id'));
but nothing changes
what i'm doing wrong?
UDP1: getPhoto, setPhoto, setPreview works good
problem was solved
foreignAlias: in relations for Photo and Preview must be different
thanx

Don't show column name when validator returns an error

I have the following code:
$this->form->setValidators(array(
'email' => new sfValidatorAnd(
array(
new sfValidatorEmail(array(), array(
'invalid' => 'Enter a valid email address.',)),
new sfValidatorDoctrineUnique(array(
'model'=>'Users',
'column'=>'email',
), array(
'invalid' => 'This email is already being used.',
)),
),
array(),
array(
'required' => 'Required',
)
),
//...
and when the email is not unique, it returns the following error: email: This email is already being used. But I don't want that email: in front of the message.
Is there a way I can stop showing the column name?
Can I get some help?
This is a special of sfValidatorDoctrineUnique, so it may be necessary to test uniqueness over more than one column.
You have to override the doClean() method to prevent this line (at the end) :
throw new sfValidatorErrorSchema($this, array($columns[0] => $error));
Further informations :
sfValidatorDoctrineUnique source
http://oldforum.symfony-project.org/index.php/m/91044/
You can pass throw_global_error option to the sfValidatorDoctrineUnique, in order to throw your error and don't display the <column>::
new sfValidatorDoctrineUnique(
array('throw_global_error' => true, 'column' => 'email'),
array('invalid' => 'Custom message')
)
Hope it's helpful.
Best regard.

Symfony 1.4 can't get submitted files

must be some thing simply resolving, but as a beginner, i've already spend 2 days trying to find out. I'm having a simple form ("enctype="multipart/form-data") with few inputs of text and file. I can't get what's wrong, i can get user's text data through getParameter(), but cannot get file getFiles(). i'm on ubuntu 11.04 php5.3
code:
form class:
public function configure()
{
$this->setWidgets(array(
'vendor' => new sfWidgetFormInputText(array(), array('class' => 'form-text')),
'image' => new sfWidgetFormInputFile(array(), array('class' => 'form-text')),
'city' => new sfWidgetFormInputText(),
'email' => new sfWidgetFormInputText(array('default' => 'simple#sample.org')),
'contacts' => new sfWidgetFormTextarea(),
'description' => new sfWidgetFormTextarea(),
));
$this->setValidators(array(
'vendor' => new sfValidatorString(array('required' => false)),
'image' => new sfValidatorFile(array(
'required' => false,
'path' => sfConfig::get('sf_upload_dir') . '/images',
'mime_types' => 'web_images')),
'city' => new sfValidatorString(array('required' => false)),
'email' => new sfValidatorString(array('required' => false)),
'contacts' => new sfValidatorString(array('required' => false)),
'description' => new sfValidatorString(array('required' => false)),
));
$this->widgetSchema->setNameFormat('pv[%s]');
}
action:
public function executeCreate(sfWebRequest $request)
{
$this->forward404Unless($request->isMethod(sfRequest::POST));
return $this->renderText(var_dump($request->getParameter('pv'))); //this array include vars from form
//return $this->renderText(var_dump($request->getFiles('pv'))); //empty array
}
You should provide the actual code you are trying with. You could also look further into the forms component, which has a section on file uploads with example code here (bottom of page):
http://www.symfony-project.org/forms/1_2/en/02-Form-Validation
This part of the docs is still relevant for symfony 1.4.
Does your form widget configuration look anything like the following?
$this->setWidget('attachment', new sfWidgetFormInputFileEditable(array(
'file_src' => '/upload/' . $this->getObject()->getAttachment(),
'edit_mode' => true,
'with_delete' => true,
)));
$this->setValidator('attachment', new sfValidatorFile(array(
'path' => sfConfig::get('sf_upload_dir'),
'required' => false
)));
$this->setValidator('attachment_delete', new sfValidatorPass());
Also, check if you have permissions on your upload folder:
chmod 777 web/upload/
Are you binding the files as well as the form parameters, like so?
$this->form->bind($request->getParameter($this->form->getName()), $request->getFiles($this->form->getName()));
you must add the enctype="multipart/..." attribute to your form

Resources