IRC logs

20141113

Logs from channel #fedext on freenode - our official support channel.

IRC log range: 20141113*

20141113

  • 08:53:18 <denis_droid> Good morning :-)
  • 09:04:55 <denis_droid> I got a general typo3 question. Is it possible to set the static template inclusion order to "include before all static templates if root flag is set" programatically from an extension?
  • 09:17:01 <batjony> guys is this a valid condition, <f:if condition="{var1} || {var2}">
  • 09:17:52 <batjony> as I see here https://fluidtypo3.org/viewhelpers/fluid/master/IfViewHelper.html, the only valid conditions should include only ==, !=, <, <=, >, >= %
  • 09:18:20 <batjony> and I am wondering if || or && could be used in such cases
  • 09:38:25 <batjony> so I found a solution, i will share it: <v:if stack="{0: var1, 1: '||', 2: var2}">
  • 10:39:54 <jmverges> good morning mates
  • 10:40:26 <jmverges> I have a question, can I do an OR into condition="" ?
  • 11:01:58 <batjony> you cant do this using the standard fluid helper f:if condition
  • 11:02:00 <batjony> but
  • 11:02:10 <batjony> you can do this using vhs
  • 11:02:19 <batjony> <v:if stack="{0: var1, 1: '||', 2: var2}">
  • 11:02:56 <batjony> or you can create some custom view helper of course :)
  • 11:19:02 <jmverges> uhmm�
  • 11:20:19 <denis_droid> batjony: Thank you very much for the finding. :-)
  • 11:23:45 <jmverges> the argument "stack" was registered with type "array", but is of type "string"
  • 11:23:51 <jmverges> is returning this
  • 11:25:20 <denis_droid> jmverges: Don't surround variables with {}
  • 11:27:39 <jmverges> I' using {setting.foo} inside
  • 11:28:06 <denis_droid> Yeah that's the error
  • 11:28:10 <denis_droid> just use settings.foo
  • 11:28:17 <denis_droid> and it'll work :-)
  • 11:29:01 <jmverges> it's returning the same, one second, I'm installing irc in the other computer
  • 11:30:06 <juanmanuelverges> hi there
  • 11:30:10 <juanmanuelverges> <v:if stack="{0: v:content.get(column: '12', pageUid:settings.layoutPage), 1: '||' , 2: v:content.get(column: '12') }">
  • 11:30:35 <juanmanuelverges> <v:if stack="{0: v:content.get(column: '12', pageUid:'{settings.layoutPage}'), 1: '||' , 2:v:content.get(column: '12') }">
  • 11:30:44 <jmverges> both of them
  • 11:30:52 <jmverges> are returning the same error
  • 11:32:57 <juanmanuelverges> denis_droid: ?
  • 11:33:32 <denis_droid> You are missing a closing ) for the first v:content.get
  • 11:34:23 <juanmanuelverges> where? I don't see it
  • 11:35:01 <juanmanuelverges> v:content.get(column: '12', pageUid:settings.layoutPage)
  • 11:35:04 <denis_droid> <v:if stack="{0: v:content.get(column: '12'), pageUid:settings.layoutPage), 1: '||' , 2: v:content.get(column: '12') }">
  • 11:35:09 <denis_droid> ahhh sorry
  • 11:35:10 <denis_droid> :(
  • 11:35:18 <juanmanuelverges> :p
  • 11:35:32 <denis_droid> Ok I don't see it either :/
  • 11:36:34 <bjo3rn> juanmanuelverges you have to wrap v:content.get into '{...}'
  • 11:37:01 <gbod> my grandfather was a wise man. He said "Don't ever put too much logic into your templates"
  • 11:37:25 <bjo3rn> with great power comes great responsibility
  • 11:38:07 <juanmanuelverges> <v:if stack="{0: {v:content.get(column: '12', pageUid:'settings.layoutPage')}, 1: '||' , 2: {v:content.get(column: '12')} }">
  • 11:38:16 <juanmanuelverges> same problem
  • 11:38:25 <bjo3rn> nothing has changed, has it?
  • 11:38:32 <juanmanuelverges> the same error
  • 11:38:51 <bjo3rn> sure, you didn't change anything
  • 11:39:03 <juanmanuelverges> yes, I wrapped it into {}
  • 11:39:14 <gbod> '{...}'
  • 11:39:19 <juanmanuelverges> ahç
  • 11:39:24 <bjo3rn> ^^
  • 11:39:53 <bjo3rn> but gbod is right: that's heavy logic for a view.
  • 11:40:15 <juanmanuelverges> <v:if stack="{0: '{v:content.get(column: '12', pageUid:'settings.layoutPage')}', 1: '||' , 2: '{v:content.get(column: '12')}' }">
  • 11:40:29 <juanmanuelverges> same error
  • 11:40:52 <bjo3rn> nested quotes
  • 11:41:01 <bjo3rn> you can't have ' inside '
  • 11:41:02 <denis_droid> Does someone know how to prevent the default css_styled_content CSS from being linked in the FE?
  • 11:41:16 <bjo3rn> yes, denis_droid: uninstall it
  • 11:41:18 <bjo3rn> ^^
  • 11:41:20 <juanmanuelverges> sure...
  • 11:41:24 <denis_droid> bjo3rn: :P
  • 11:41:46 <denis_droid> When uninstalling it I don't get anything rendered. :/
  • 11:42:03 <bjo3rn> <v:if stack="{0: '{v:content.get(column: \'12\', pageUid:\'settings.layoutPage\')}', 1: '||' , 2: '{v:content.get(column: \'12\')}' }">
  • 11:42:09 <bjo3rn> but how ugly is that?
  • 11:42:58 <denis_droid> When removing the css_styled_content altogether the content elements don't get rendered.
  • 11:43:22 <bjo3rn> that's the downside.
  • 11:43:35 <bjo3rn> I'm sure there's some ts stunt
  • 11:44:26 <denis_droid> I thought sth like this could work: plugin.tx_cssstyledcontent._CSS_DEFAULT_STYLE >
  • 11:44:43 <gbod> denis_droid: You have to remove it via TS for each extension using it in the same way.
  • 11:44:44 <juanmanuelverges> thank you guys, is working fine
  • 11:45:03 <juanmanuelverges> what about partials into section Configuration?
  • 11:45:09 <bjo3rn> juanmanuelverges it may be working but it's not fine ;)
  • 11:45:16 <juanmanuelverges> why not?
  • 11:45:18 <bjo3rn> what about that?
  • 11:45:28 <juanmanuelverges> because of a lot of logic?
  • 11:45:41 <bjo3rn> that and the uglyness of the code
  • 11:45:55 <bjo3rn> but it's up to you ofc
  • 11:46:06 <juanmanuelverges> so, how would you handle it?
  • 11:46:06 <gbod> Logic in Configuration, come on? We did land on a comet, we can do better.
  • 11:47:03 <juanmanuelverges> I have a page called Layout with a Layout called Layout
  • 11:47:14 <gbod> Yo dawg, ...
  • 11:47:15 <juanmanuelverges> and I have several pages with different Page Layout
  • 11:47:18 <denis_droid> gbod: Thank you. felogin comes with some custom style as well :-)
  • 11:47:42 <juanmanuelverges> and the result is that each page loads its own content and content for page Layout
  • 11:47:46 <juanmanuelverges> is an approach
  • 11:48:01 <juanmanuelverges> to manage all the stuff of a site with the admin
  • 11:48:06 <juanmanuelverges> and with CE
  • 11:48:11 <bjo3rn> what is that condition all about? I mean it reads: if there's content in column 12 for pageUid n or if there's content in column 12 at all?
  • 11:48:48 <bjo3rn> no need for the 'or' if I'm not mistaken?
  • 11:48:54 <juanmanuelverges> I have some "zones" where the content could be loaded from both pages
  • 11:48:54 <juanmanuelverges> no
  • 11:49:19 <bjo3rn> ah, got it
  • 11:49:20 <bjo3rn> ok
  • 11:49:33 <bjo3rn> and this is placed in a configuration section?
  • 11:49:48 <juanmanuelverges> Imagine the following: I have a column called column1 in the Layout page where I introduce a Menu of subpages. However for each page I would like to introduce a image after the Menu.
  • 11:50:38 <juanmanuelverges> the behaviour of showing Just content Page, Layout content Before Page content, Layout content after Page content
  • 11:50:46 <juanmanuelverges> that is in the configuration
  • 11:51:38 * bjo3rn is reading that sentence for the 4th time
  • 11:51:48 <gbod> Parsing error at "Layout content after Page, Layout content after Page, Layout content after Page, Layout content after Page"
  • 11:52:29 <bjo3rn> srlsy juanmanuelverges: can you post the full template please on pastebin or the like?
  • 11:52:37 <Guest|15993> hello everybody
  • 11:52:46 <bjo3rn> hello Guest|15993
  • 11:53:01 <Guest|15993> can somebody explain me why i have a column in the backend --> fluid content area?
  • 11:53:13 <Guest|15993> and how i can remove it / hide it?
  • 11:53:38 <bjo3rn> this column holds content inside flux grids
  • 11:54:07 <Guest|15993> and it is not possible to hide it?
  • 11:54:31 <bjo3rn> can't you hide the column selector?
  • 11:55:31 <juanmanuelverges> gbod, bjo3rn :D
  • 11:55:51 <Guest|15993> where is the column selector?
  • 11:56:04 <juanmanuelverges> uhm
  • 11:56:24 <bjo3rn> where you just found out that there's a column named 'fluid content area'?
  • 11:56:37 <juanmanuelverges> https://bitbucket.org/mandarinabytes/m8thlayout/src/a07caecc90417b866055338b234e8806355eb0c7/Resources/Private/?at=default
  • 11:56:39 <Guest|15993> in the backend
  • 11:56:51 <Guest|15993> on site
  • 11:57:20 <Guest|15993> on the right site where i have colums like
  • 11:57:26 <denis_droid> What do you use to minify the page html? With an extension or later on in the stack with apache or nginx?
  • 11:57:50 <bjo3rn> I don't
  • 11:58:22 <bjo3rn> juanmanuelverges?
  • 11:58:38 <Guest|15993> speak somebody german?
  • 11:59:09 <bjo3rn> you can say you to me^^
  • 12:00:17 <batjony> guys, i have a custom ce, also ContentController and the corresponding action, is there a way to pass variables from the controller to the flux <f:section name="Configuration"> section ?
  • 12:01:36 <batjony> as I see the controller has "access" only to the main section <f:section name="Main">
  • 12:02:25 <juanmanuelverges> bjo3rn: ?
  • 12:02:56 <gbod> batjony: Thanks for answering your question.
  • 12:03:15 <batjony> np you welcome
  • 12:04:10 <bjo3rn> juanmanuelverges I see a lot of templates. which one is it?
  • 12:04:12 <NamelessCoder> batjony those would be separate concerns. One is for BE, the other for FE. One is for configuration, the other is for rendering. The one class that ties those two together would be the Provider class
  • 12:04:28 <juanmanuelverges> bjo3rn: all are working in the same way
  • 12:04:33 <juanmanuelverges> Main.html for example
  • 12:05:08 <batjony> NamelessCoder: ya what is this Provider class ?
  • 12:05:15 <batjony> what do you mean
  • 12:05:32 <NamelessCoder> see the documentation chapter dedicated to this: https://fluidtypo3.org/documentation/templating-manual/advanced-provider-extensions/custom-flux-providers/use-cases-for-providers.html
  • 12:05:36 <juanmanuelverges> bjo3rn: however you shoul take a look to the Layout Main.html
  • 12:06:16 <batjony> NamelessCoder: 10x
  • 12:06:35 <batjony> i have missed this article/doc :)
  • 12:14:01 <juanmanuelverges> bjo3rn: did you take a look?
  • 12:15:27 <bjo3rn> yes. I have no better idea atm though.
  • 12:16:10 <juanmanuelverges> I mean, I understand your and gbod complains about logic and other stuff
  • 12:16:22 <juanmanuelverges> however, I don't see other way right now
  • 12:17:00 <juanmanuelverges> gbod suggested me about 3 templates and options for the positions of the columns
  • 12:18:00 <bjo3rn> you should also keep the editor in mind who has to work with the backend and may not see the magic behind it.
  • 12:20:38 <bjo3rn> so, adding more templates to choose from can be an improvement even if that involves some redundancy IMHO
  • 12:20:38 <juanmanuelverges> Right now I have a lot of templates, probably at the end will be less, however I need to do all of them an some configuration
  • 12:20:53 <juanmanuelverges> bjo3rn: that is my point ;)
  • 12:21:27 <juanmanuelverges> <{settings.header.tag} class="{settings.header.class}">
  • 12:21:27 <juanmanuelverges> <v:content.render column="2" pageUid="{settings.layoutPage}"/>
  • 12:21:27 <juanmanuelverges> </{settings.header.tag}>
  • 12:21:48 <juanmanuelverges> looks like typoscript now XD
  • 12:22:10 <Akii> there is a tag VH afaik
  • 12:22:33 <juanmanuelverges> Akii: ?
  • 12:22:42 <bjo3rn> v:tag
  • 12:22:46 <Akii> ^
  • 12:23:02 <juanmanuelverges> uhm lets take a look
  • 12:23:05 <juanmanuelverges> thank you mates
  • 12:26:17 <NamelessCoder> uhm juanmanuelverges that looks like way, way too many templates
  • 12:26:27 <NamelessCoder> I think that...
  • 12:26:48 <NamelessCoder> 1) you somewhat try to reinvent the functionality of "content sliding" (v:content.render, argument "slide").
  • 12:27:33 <NamelessCoder> 2) you use far too many Layouts which do the exact same thing except for rendering another section name - the right way to do that, is to use the same section name always and let your Template render the parts that would differ
  • 12:29:14 <NamelessCoder> 3) colPos counts above some 6-7 pieces is usually an indication that something could be improved regarding how you insert special content in special columns - maybe not all of them need to have actual page columns but could be offloaded to a dedicated sysfolder
  • 12:30:52 <juanmanuelverges> NamelessCoder: Maybe I'm wrong but slide is taking for the parent, and I don't need that. About points 2 and 3, I don't think that the Editor experience is the same. I completly understand what are you suggesting and you are right, however Editor first, developent second
  • 12:31:08 <NamelessCoder> last tip: a generic templates extension may not make a lot of sense in the long run. My suggestion above all others would be: create templates on an as-needed basis and create the templates for each site and only that site.
  • 12:32:03 <juanmanuelverges> NamelessCoder: Thank you for the tip, however I'm trying to implement some approach that I get used to us with TV
  • 12:32:19 <NamelessCoder> as an editor I would worry about a page module presenting 10+ page columns - but if you understand the tips and why they're good practice, then my job is done ;)
  • 12:32:32 <NamelessCoder> yeah juanmanuelverges and you should avoid that
  • 12:32:49 <juanmanuelverges> let me paste an image
  • 12:32:53 <NamelessCoder> replicating the old by using the new tools tends to result in the same bloat that the old way would
  • 12:33:04 <NamelessCoder> we've learned things since TV
  • 12:33:42 <juanmanuelverges> http://docs.typo3.org/typo3cms/extensions/march8/ExtMarch8TheWorkersWomenFrameworkForTemplavoila/ThankYouTo/Screenshots/Index.html
  • 12:33:50 <juanmanuelverges> what is wrong with that=
  • 12:34:31 <NamelessCoder> 85% of your templates can be replaced with two toggles to switch on or off the left/right hand columns
  • 12:35:01 <juanmanuelverges> NamelessCoder: no offense, please don't missunderstood me.
  • 12:35:27 <juanmanuelverges> the work that you are doing is very useful and I apreciate that
  • 12:35:57 <NamelessCoder> I'm absolutely only giving tips about best practice now - whether you use it or think it applies isn't really relevant
  • 12:36:18 <juanmanuelverges> however, If I need to explain to a customer that need to first think "how many columns do you need?" that second "where the columns should be rendered?"
  • 12:36:45 <juanmanuelverges> NamelessCoder: I was thinking about that option, gbod also gave me the same tip
  • 12:37:10 <juanmanuelverges> I appreciate that, maybe in a future I will move to that direction, however, for a editor is easier just make a click
  • 12:37:44 <juanmanuelverges> if it was for me, probably I will the last tip
  • 12:38:59 <juanmanuelverges> NamelessCoder, room, please, don't think that I'm disrespectful. I really appreciate the help that you give me
  • 12:39:34 <NamelessCoder> don't worry, I get it. I was only worried that you weren't understanding what I was saying or why I was recommending it
  • 12:40:44 <juanmanuelverges> no, really, I understand it. I have a question about that, is there flux:radio with images?
  • 12:41:31 <NamelessCoder> if TCA supports if in a flexform context, flux supports it in a flexform context. You gotta study the TCA docs to know *what* you can do, then the flux docs to know *how* you can do it
  • 12:41:40 <gbod> Hehe, radio with images is called television. ;)
  • 12:41:50 <juanmanuelverges> gbod lol
  • 12:41:50 <NamelessCoder> heheeh gbod nice catch :)
  • 12:42:03 <NamelessCoder> headache with pictures :)
  • 12:42:12 <NamelessCoder> aka. an idea
  • 12:42:45 <NamelessCoder> lunch break is over - back to work everyone, including me!
  • 13:03:05 <juanmanuelverges> I have other question, is about typoscript and settings. I have this in my constants plugin.tx_m8thlayout.settings.bottomNavigation.class
  • 13:03:23 <juanmanuelverges> and this into a partial : <v:tag name="{settings.bottomNavigation.tag}" class="{settings.bottomNavigation.class}">
  • 13:03:35 <juanmanuelverges> what I'm not doing or what I'm doing wrong
  • 13:04:50 <juanmanuelverges> ah, shit it is a constant
  • 13:07:49 <juanmanuelverges> uhm is not only because of that
  • 13:09:17 <juanmanuelverges> is like is not getting the value of the settings
  • 13:11:32 <batjony> is there some real examples about https://fluidtypo3.org/documentation/templating-manual/advanced-provider-extensions/custom-flux-providers/use-cases-for-providers.html where I can take a look
  • 13:12:01 <juanmanuelverges> take a look to fluidshare extension
  • 13:12:17 <NamelessCoder> batjony fluidpages, fluidcontent, flux, fluidcontent_core all contain Providers
  • 13:13:06 <NamelessCoder> juanmanuelverges one of two options: 1) you're not passing, or somehow overriding, the value in your template. 2) more likely, you didn't create a corresponding TS *setup* entry that inserts the constant's value.
  • 13:13:49 <juanmanuelverges> was the second one.. sorry
  • 13:14:05 <juanmanuelverges> now is done, is amazing all this stuff, really
  • 13:16:56 <batjony> 10x
  • 13:59:16 <denis_droid> What is the correct way to render a formatted last changed date in the fluid template? This does not work: <v:page.header.meta name="date" content="{page.SYS_LASTCHANGED -> f:format.date(format: 'Y-m-d')}" />
  • 14:08:28 <denis_droid> I know that this works: <v:page.header.meta name="date" content="{f:format.date(format: 'Y-m-d', date: '@1415779789')}" />
  • 14:14:02 <denis_droid> Ok that's the way to go: <v:page.header.meta name="date" content="{f:format.date(format: 'Y-m-d', date: '@{page.SYS_LASTCHANGED}')}" />
  • 14:38:46 <denis_droid> Can the generator meta tag be removed in the head or is it fixed in code?
  • 14:39:02 <denis_droid> (in Typo 3 6.2, I know that it was fixed in 4.x)
  • 14:46:50 <danilobuerger> denis_droid yes it can be removed, for example by replacing the page renderer template file
  • 14:49:56 <denis_droid> danilobuerger: Yeah ok I know. (you told me :D) I just don't want to include every script in my head. If I understand it correctly v:asset calls in my templates would not lead to added assets in the head. Is that correct?
  • 14:50:20 <denis_droid> I have a lot of optional JS that I just include in some templates.
  • 14:50:33 <danilobuerger> i didnt tell you i think? replacing the page renderer template file is not the same as disabling the page renderer itself
  • 14:51:26 <denis_droid> Oh ok. Where can I find some documentation about replacing the page renderer :-)
  • 14:52:47 <danilobuerger> http://docs.typo3.org/typo3cms/TyposcriptReference/Setup/Config/Index.html#setup-config-pagerenderertemplatefile
  • 14:53:11 <denis_droid> ah that looks good :-)
  • 14:53:19 <denis_droid> Thank you very much.
  • 14:53:50 <denis_droid> One last question for today. What is the correct way of accessing the current locale in fluid templates? (sth. like en_US)
  • 15:50:02 <beo6> how is <flux:field.inline.fal> correctly used? if i debug the value i only get the number of attached images which does not really help in displaying it. :)
  • 15:50:50 <NamelessCoder> https://fluidtypo3.org/library/code-examples.html?tx_fluidshare_display%5Bgist%5D=5&tx_fluidshare_display%5Baction%5D=display&tx_fluidshare_display%5Bcontroller%5D=Gist&cHash=e403004449572e5ede2dd38d6d268f99
  • 15:51:11 <beo6> NamelessCoder: ahh. thank you a lot.
  • 16:25:45 <denis_droid> Does someone see an error in this condition? [plugin.tx_xyz.settings.enableOpenGraphTags = 1]
  • 16:29:41 <beo6> denis_droid: yes
  • 16:29:57 <denis_droid> Ok so what is the error :D
  • 16:30:28 <beo6> i think you want to use typoscript conditions?
  • 16:30:45 <denis_droid> yeah thats right
  • 16:31:13 <denis_droid> after that would come the things that should be done when open graph tags are enabled and after that would be [global]
  • 16:31:32 <denis_droid> (but I'm a beginner so bear with me :-))
  • 16:32:55 <beo6> [globalVar = LIT:1 = {$plugin.tx_xyz.settings.enableOpenGraphTags}]
  • 16:33:11 <beo6> i think this should work if your value is a constant
  • 16:33:52 <denis_droid> Ok :-) Let me check.
  • 16:37:32 <denis_droid> beo6: Great thank you that works.
  • 16:48:46 <denis_droid> grr TS is killing me :/. What is wrong with that hmpf: config.htmlTag_setParams = lang="{$config.language}" class="no-js" prefix="og: http://ogp.me/ns#"
  • 16:49:06 <denis_droid> I just want to output the config.language correctly
  • 16:49:44 <NamelessCoder> config.language is probably not a constant
  • 16:49:56 <denis_droid> Ok so only constants can be used that way right?
  • 16:51:09 <denis_droid> Ok hmm. What would be the right way to just add something to the hmtlTag_setParams?
  • 16:51:47 <NamelessCoder> by doing what you did, but using a constant
  • 16:53:32 <denis_droid> Ok. So this is wrong as well? config.htmlTag_setParams := appendString(|prefix="og: http://ogp.me/ns#)"
  • 16:54:29 <NamelessCoder> that might work (not sure) but of course you don't get the language that way
  • 16:55:01 <denis_droid> Your right :/
  • 16:57:18 <denis_droid> Well languages are defined in the base template. This update of the html tag should happen in the provider extension. But the base template is loaded after the extension ts. So I assume that language would be null no matter what. Ahh I'm getting confused right now. :-)
  • 16:58:28 <denis_droid> But in the end I just want to add "prefix="og: http://ogp.me/ns#)" when opengraph tags are enabled :P
  • 18:17:19 <juanmanuelverges> hey mates, does anybody know some extension to include fonticons like CE and into RTE?
  • 22:02:01 <juanmanuelverges> hi there
  • 22:02:16 <juanmanuelverges> I'm having a problem with the code of this morning
  • 22:02:27 <juanmanuelverges> <v:if stack="{0: '{v:content.get(column: \'12\', pageUid:\'settings.layoutPage\')}', 1: '||' , 2: '{v:content.get(column: \'12\') > 0}' }">
  • 22:02:36 <juanmanuelverges> <v:if stack="{0: '{v:content.get(column: \'12\', pageUid:\'settings.layoutPage\')}', 1: '||' , 2: '{v:content.get(column: \'12\') > 0}' }">
  • 22:04:20 <juanmanuelverges> I'm getting an error: The stack was not comparable and did not include any logical operators
  • 22:33:51 <Akii> juanmanuelverges: syntax errors