04:04:48 <mneuhaus> NamelessCoder: how'd you go about a "generic" way to provide access to the "request" inside viewHelpers? i know fluid standalone doesn't have a request anymore. but i kind of need a way to read request arguments like page, sortBy, order, limit, search, filter
05:46:10 <NamelessCoder> mneuhaus $this->renderingContext->getView() and let the View contain the Request if you need it. As it is default, the View is decoupled from everything Request-context related except for knowing the controller, action and format (which it uses to resolve our MVC-based template locations)
05:46:41 <NamelessCoder> alternatively, insert it into ViewHelperVariableContainer as a stored variable; inserted by the View as well
05:47:12 <NamelessCoder> and finally, if we are in TYPO3 context with your question, $this->controllerContext exists on ViewHelpers (but only in TYPO3)
05:47:13 <mneuhaus> hmm, yea kinda figured a way like that :)
05:47:40 <mneuhaus> well, i'd like to keep it open/flexible this time around ;D
05:47:51 <NamelessCoder> but you can get to the View instance from within ViewHelpers and that's an extremely transparent way of doing such a thing
05:47:59 <NamelessCoder> e.g. ControllerActionView ;)
05:48:18 <mneuhaus> yep, i think something like that makes sense, maybe even as a trait
05:48:41 <mneuhaus> i already toyed with the idea to move quite a bit of logic out of the "controller" area towards the view area
05:48:51 <NamelessCoder> Traits are good but lets avoid them since we have none at this point
05:48:54 <mneuhaus> so the controller is only used to fetch/store data
05:49:13 <NamelessCoder> hehe tread carefully now ;)
05:59:24 <mneuhaus> "all i need" is an iteratable object with a common api for rendering a table
06:00:05 <mneuhaus> so, it needs to be iteratable and i need to be able to set limit, offset, order, and maybe search/filter stuff
06:01:20 <mneuhaus> so i was thinking to use a common pattern kinda like: EntityQuery('MyEntity')->execute() which gives me an EntityResult i can iterate over and a method EntityResult->getQuery() to refine the query with limit, offset, etc
06:01:47 <mneuhaus> that's basically exactly what i do currently in the flow version of expose which makes sense imho
06:02:28 <NamelessCoder> since this *is* a View I would prefer something that only works with predefined queries or query types
06:02:40 <NamelessCoder> e.g. .all, .single.$uid, whatever
06:02:50 <NamelessCoder> (as variables accessed in template)
06:03:25 <mneuhaus> it is, the EntityResult is assigned as {items} in the template
06:03:40 <NamelessCoder> that's not what I mean :)
06:07:02 <mneuhaus> i fetch the defined objects/items from the current view, which usually was a QueryResult. i then fetch the Query from that and pass that through the QueryBehaviors to modify it if needed with limit, offset, sortBy, etc
06:07:41 <NamelessCoder> not sure I understand the logic
06:07:42 <mneuhaus> then inside the BehaviorViewHelper i override the original items/objects with the result of the modified query
06:08:06 <mneuhaus> wait, i'll sketch some pseudo code
06:08:36 <NamelessCoder> you retrieve a template variable, then overwrite it and use it, but never restore the original... so this works like a cumulative filter, i.e. the more instances of the ViewHelper you use on the same $objects, the smaller that set becomes.
06:13:00 <mneuhaus> hmm, ok, so i'll create a VariableProvider that gets objects in form of a QueryResult for example and i interact with the VariableProvider to tell it i only want 10 of the results starting from 30?
06:13:02 <NamelessCoder> what if a VariableProvider had DataSourceInterface[] and DataSourceInterface declared these unified methods you can do to a generic source of data.
06:13:55 <NamelessCoder> but why the hell not let it support more.
06:14:08 <mneuhaus> would prefer that in that case i think
06:14:34 <mneuhaus> because if you add a ExposeVariableProviderWhatever, you still might want to add generic variables
06:14:41 <NamelessCoder> you could then ship your solution as a VariableProvider, the DataSourceInterface and X number of ViewHelpers to paginate, limit, filter by attributes, etc.
06:17:08 <NamelessCoder> I'm thinking if there's a way to avoid multiple providers. It would obscure the logic in f:debug, would make it hard to predict when there are collisions too.
06:18:12 <mneuhaus> i mean the expose one could just extend the default one, would probably solve 90+% of usecases
06:18:14 <NamelessCoder> ...without making DataSourceInterface part of Fluid
06:19:28 <mneuhaus> i guess extending should be fine
06:19:50 <NamelessCoder> yeah but TYPO3 already does this so the solution would need a TYPO3-specific version too.
06:20:01 <NamelessCoder> that's the not-so-great part
06:20:36 <NamelessCoder> VariableProvider was *meant* to be replaced, to be viewed like a crazy dynamic arrayobject-type storage you can manipulate from the outside, too.
06:21:07 <mneuhaus> instead of extending i could make it a "fallback" inside it, if !hasVariable -> fallback->hasVariable
06:23:43 <mneuhaus> when it's running barebone i'll think about integrating it into extbase to test it
06:28:37 <NamelessCoder> as long as you do some sort of Request interaction I suppose that's fine. We would then trust whatever is around Expose to actually make the Request safe ;)
06:37:13 <NamelessCoder> I don't expect it to perform as well as my thunderbolt cinema display. So my expectations are as they should be, given the price, size, 4K immaturity etc.
06:39:50 <pedda> and i hope for better performance when i'm in the need of a new computer which then, hopefully, will be able to power external 4K displays at 60 Hz
06:47:05 <pedda> wel i have an imac which is used to play music a the moment
06:47:40 <pedda> i realized, syncin my dev env on two computers just takes too uch time/effort
06:48:27 <pedda> maybe i've not the best setup to work on both computers with just a short delay of transition from one computer to another
06:51:40 <NamelessCoder> I don't do it myself, but you could easily use git to track all your dot-files and Library/Xyz folders. And you could equally easily use something like composer to load every repository you work on.
06:52:04 <NamelessCoder> but I know, one machine is easier. It's also all eggs in the same basket :)
06:53:34 <pedda> all my projects are versioned so, fetching files, stying up to date is not that hard, bad as soon as you add some bookmark to sequel pro, or some editor config.. you need to extend your sync-config or add that bookmark on both computers which is a bit annoying
06:53:51 <pedda> but as you said, it's just a matter of configuration
06:54:05 <pedda> some scripting magic, and wer're in
07:00:31 <NamelessCoder> all fun and games, that button
07:02:39 <pedda> the first time i turned on my mbp (early 2015) i was like: dude! if the time, you spent waiting for your imac to finish indexing and such, was added, you could have boght two of those mbp's
07:03:50 <artisticMink> Hello, after updating to 7.1 from 6.X i'm unable to add new content elements to a page. Old CE are displayed flawlessly. I went trough the migration sheets and validated my markup. It might have to do with the issue that my custom content controller doesn't get recognized as well. Methods won't get called. Where the similiar issues in the past?
07:04:51 <pedda> artisticMink in such cases i get the latest version of EXT:builder to check if a bare extension generated by EXT:builder looks the same as my older provider extension
07:06:07 <pedda> if your controlles actions aren't called, check if the fce you're playing around is stored the correct way in the database
07:06:49 <artisticMink> pedda: I already tried examples from the documentation but you're right. I'll should give it a try.
07:07:00 <pedda> speaking of : Vendor.ExtensionNAme->MyFce.html
07:07:11 <pedda> or without vendor and stuff like this
07:07:48 <pedda> fix such a record and see if DebuggerUtility in your fce's action makes it to the frontend
07:08:52 <pedda> if it does use this to have a one liner ;)
07:24:51 <pedda> additionally you could change "Entry created! Please allow a bit of time for the web master to approve the submission." to "Entry created! Please allow a bit of time for the master to approve the submission." ;)
12:03:37 <Kaimane> When I set the icon option to a flux:form like options="{icon: '{f:uri.resource(path: \'Icons/Content/Icon.png\')}'}" the icon will not be shown in the backend. The image src is "../typo3conf/ext/myext/Resources/Public/Icons/Content/Icon.png" but the browser tries to load it from http://dev.local/typo3/sysext/cms/typo3conf/ext/myext/Resources/Public/Icons/Content/Icon.png". I'm using the latest
12:03:37 <Kaimane> vhs, flux, fluidpages und fluidcontent extensions from TER.
12:23:44 <pedda> specify ExtensionName attribute on f:uri.resource if it works then, your extension is not properly implemented regarding namespacing
13:36:36 <thierry> My fault: didn't try fcc at this time ... !
14:41:40 <mneuhaus> NamelessCoder: workin on the variableProvider stuff, hitting a first bump, what, if i want to show to lists of objects on in the same template? the way the variableProvider would be set up, it would be just for one resultSet
15:34:32 <mneuhaus> NamelessCoder: found another issue regarding using a variableProvider:
15:35:37 <mneuhaus> currently the AbstractTemplateView creates a new StandardVariableProvider for rendering sections and partials which makes the initially set VariableProvider not accessable anymore