Jump to content

FieldtypeTextareaLanguage - set 'Text Formatters' and 'Inputfield Type'


didhavn
 Share

Recommended Posts

Hey All.

I am creating a new field of type 'FieldtypeTextareaLanguage' via a module.

Everything is working just fine expect that I can not find any information on how to set the 'Text Formatter' (to HTML Entity Encoder) and 'Inputfield Type' (to CKEditor).

I tried the following which failed and was just a guess because of the IDs and select-values in the HTML...

$f = new Field();
$f->type = $this->modules->get("FieldtypeTextareaLanguage");
$f->name = $newstcontentfieldname;
$f->label = $newstcontentfieldlabel;
$f->set('tags','servicetype');
$f->set('icon','fa-pencil-square');
$f->set('asmSelect0','TextformatterEntities');
$f->set('Inputfield_inputfieldClass', 'InputfieldCKEditor');
$f->save();

[EDIT]

Furthermore, I just came across the question how to set the 'Visibility' --> ' Show this field only if' Option?

Is there any documentation that I missed sofar about these field-variables and how to set them?

[/EDIT]

I am thankfull for any suggestion and hope somebody can help me.

Thanks a lot!

Link to comment
Share on other sites

For the input type, you should be able to set it like this:

$f->set("inputfieldClass", "InputfieldCKEditor");

The text formatters setting works the same, only it expects an array of values (in order of execution):

$f->set("textformatters", array("TextformatterEntities"));

There's also documention for inputfield dependencies in the API docs.

  • Like 2
Link to comment
Share on other sites

  • 2 years later...
On 2/15/2016 at 2:57 AM, BitPoet said:

For the input type, you should be able to set it like this:


$f->set("inputfieldClass", "InputfieldCKEditor");

The text formatters setting works the same, only it expects an array of values (in order of execution):


$f->set("textformatters", array("TextformatterEntities"));

There's also documention for inputfield dependencies in the API docs.

I've been looking for the answer for this everywhere - and I appreciate the answer.

 

But *where* in the Core is the "textformatters" attribute instantiated?! I can't find it anywhere. I don't see it in the Textformatter class, or Field, Fieldtype or FieldtypeText. Any ideas?

Link to comment
Share on other sites

6 hours ago, ethanbeyer said:

But *where* in the Core is the "textformatters" attribute instantiated?! I can't find it anywhere. I don't see it in the Textformatter class, or Field, Fieldtype or FieldtypeText. Any ideas?

The textformatters attribute is defined/set in FieldtypeText::___getConfigInputfields and its value is used in FieldtypeText::___formatValue.

  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...