 Good morning everyone. I got a pretty big room as everyone actually had their coffee Got got some energy from the keynote or skip the keynote or went to the stream Yeah, not much energy yet. Okay. I Am Earl Miles I bet The thing about being at Drupal con is I get to feel famous for a week So I guess you all have heard of me So I don't really need to introduce myself But I did write the views module as well as panels and a whole bunch of modules that goes along with it All right. I got a room full of pro panels people awesome Because there's the a sign in the in the exhibitors room and there's the stuff stuff people say about Drupal And there's this thing on there always use panels and never use panels right next to each other And a little bit of controversy about panels some of it justified some of it not We try to address what we can So I guess I don't need to go through this slide too much I'm betting most of you know this but I'll talk about it a little bit anyway And I mostly my slides aren't very long. I'm mostly gonna do demos, but I'm gonna walk through a little bit about what I'm Actually going to show you so the panels suite of software is panels although What panels is really these days it started off as everything, but it is now just the layout manager it does styles it does the drag and drop stuff and It creates a central way so that the panels System can be reused in other applications And the first the major application to use it has always been page manager once we split that out page manager is a module that is it was well described as a GUI for hook menu Which means you give it URL paths and Other information that hook menu normally has like whether it has a visible menu It shows up in the menu structure and other things like that and then you provide Things that will render or display your content Given that and the primary thing you can put there are panels But it also can do a couple of things that are panels like eclipse GC Chris Vanderwaters Context admin module, and there's also HTTP response codes. You can use it to do 301 redirects or 403 access denied straight up or just 404 you can pretend that the path doesn't exist Which sounds funny, but there are legitimate reasons to do that The other major module that has existed for a while in the panels universe is called panels everywhere and It's a replacement for block module entirely and your page template And it needs a lot of work, and I'm hoping in the next year that I can redo the UI for panels everywhere to make it more friendly particularly since In Drupal 8 there is an initiative now to get a lot of this layout stuff Into Drupal core my actual hope is that The panels module will cease to exist But maybe some the rest of these will continue to exist so that core can do the layout stuff and Contrib can help use that layout stuff in ways that core might not be able to do That would put the core functionality in core and then Expand on that in all kinds of ways The new stuff that I've written in the last Six months, I would say maybe a year panelizer. I can't remember when I actually published it And these have mostly been Funded by clients, so I've been paid to write this stuff and I should drop I village's name out Because they have paid to have panelizer field of panel pains and all of this stuff except for penoply at the end written and They they've needed this stuff because they have a very complicated site with a lot of content editors And it was very important to them and it became very important to me that we could provide a good experience for their content people So the first thing that they had me write was panelizer Which is It's panel nodes on steroids and I'll talk about that more in another slide, but also the fieldable panel pains Which are entities that can be used in panels directly kind of like the bean module does for blocks And then these other things Which I'll get to a little bit more And then penoply which is being funded by chapter three slash pantheon I think it's more pantheon than chapter three, but the people cross over a lot and Matt Cheney has been working over time the last couple of months on Open Academy, which is their distribution for education And they realized pretty early that there were if you just took out a few things It actually became a pretty generic distribution And I've been talking about having a distribution based on panels for years, but the technology hasn't been there The UI hasn't been there and just it's so it's never actually quite materialized Well as of about a week ago this has materialized in a beta form It's not quite ready yet, but it is on Drupal.org and you can install it And it's also on pantheon and you can spin up a pantheon site if you've got a dev key and look at it A lot more will be changing in it over the next few weeks, but it's there now that we can look at The first new thing I want to talk about is and this actually is pantheon slash chapter three Did the bulk of the design work on this we redesigned the IPE the IPE is the in-place editor Mostly if you've been using panels it has a back-end editor where you drag stuff around But those are little blocks that represent content, but not are the content the IPE is an editor where you're looking at the content and you click a button on the bottom and All of a sudden you can drag and drop it all and I'll show you this when I get to the end of my slides But it's a nice thing the redesign Makes this less ugly because when we first introduced it we were more worried about the code path and making it function Then we were on making it look nice once we got the functionality in put some money into making it work Look nice and now it's looking really good And this is in the newest release that I did just this weekend. So very new stuff Also as part of that the IPE can now change the layout of the page Which it did not used to be able to do and can change the style of the pain. I'll show you that a little bit later, too One thing that I village needed for their content people was pain locking one of the most important Problems they were running into is they had content people that they needed to be able to control where their content was They weren't editing the layout although they might change it from one to another But they needed to be able to say these ads can't move and these header elements have to stay in the header So we added locking to pains and it's a pretty simple mechanism if you have the lock permission you can Lock the pain and say this can stay either it can't be moved at all Or it can only be moved in this set of regions and you can select which regions it is Then to move it it must be unlocked and only people with the unlock permission can do that It was a great thing for the content people because it allowed them to not worry about things that were outside of their purview Because the site builder could then lock those pains into place The big thing that they funded and took the most amount of time and and when I say most amount of time I worked 60 70 hours a week for like three weeks to get this actually done on their schedule was called panelizer and the simple description is that it's panel nodes on steroids and with context the more complicated description is We allow you to have a panel layout for any node And it will provide a default layout if you want or multiple default layouts and you can choose which one to use every aspect of The the system has permissions, so I can say The only the executive people can even modify the layout which means that these nodes will basically get the default layout and nothing else Or I can give them permission to only select one of the layouts and nothing else Or I can give them full permission to modify everything about the layout and the context Per node and each node bundle gets its own set of permissions So you can be very very granular in how you let people do this or you can just Blow out the permissions and let them do whatever you want depending upon The needs of your content people and how how much true separation you have Also as part of it we made it kind of entity generic so it comes with plugins to work on users or taxonomy terms and Outside of the node the plugins are actually really short. They're only Maybe 50 or 100 lines of code. Some of that code is part as an export So you don't have to write that you just have to give them a good default And you have to tell it how to save because there's no generic entity save function and a couple of other little things that aren't generic for entities But anyone who gets into this will not take very long to write this for their entity if they need to That means that if you've got custom entities in your site or say product entities from commerce or other things It isn't too hard to extend the system to non-node entities and then use that to panelize anything you want This is something it I think is most useful for things like commerce Where you tend to have very complicated displays as part of catalogs I think panelizer is a revolution in the paradigm because it presents users The content people with a much slimmed-down interface one of the biggest complaints about panels Is you can't actually give it to your content people because they end up in the page manager UI, which is very very complicated panelizer strips away all of that complication your content people will never have to see the word variant and in fact panelizer covers Some 80 or 90 percent of the use cases for variants at all, which means you might not use variants yourself Even though they'll be used behind the scenes and that just strips away a little complication that many people are afraid of Fieldable panel pains at who here knows about or has used or at least understands what the bean module is Okay a few of you so I got to explain this Drupal 7 has entities and nodes and users and taxonomy terms and all that are entities One of the key things about an entity is that you can add fields to an entity And one of the key things is that because we have massively improved file handling Although it still has a long way to go as people in Dave Reed session somewhere could tell you It does mean we do have decent file handling and one of the things you can't do right now is Create a panel pane and put an image inside that pane. That's really hard because you have to store the image This was created mostly for that you can set up an entity with whatever fields you want and and Then your content people can create that entity either from a custom UI or directly inside the panel You can add content select new panel new fieldable pane or anything. It's panel pane or whatever it is and Then they'll enter their files or whatever you did it you can add bundles to this so like penopoly comes with eight or ten bundles so that there's media Image and I can't even remember what they all are but some basic content bundles that your content people can go Oh, yes, I need this media thing and pop it up and now you have a pane for it You can say this is reusable So it will show up in add content after that and you can say what category it will show up in or you can say It's not reusable and it will only be in that panel. So it's a pretty powerful little system and it also comes with The the selection criteria system on the panes so when you create one of these panes you can Control who will be able to view that pain as well as who will be able to edit that pain the important thing there was We had content people in different departments, you know the health department and the news department or whatever I can't remember the departments were but they wanted to be able to create panes that were usable Only for those departments. So they said well everyone has the create field will pain roll and everyone can edit them But we're going to lock this down to just people in this department So they create their pain say only people in our department can edit it and now it's their department's pain and no one Else will be able to mess with it and that's just using the simple selection criteria access rules that are everywhere else in panels and Pretty easy to figure out Next was a really really tiny module, but it turns out to be really really nice if you're really using panels In panels if you're looking at a node or an entity that has fields There's pain which just displays a single field and you select the formatter and you control how it looks Well, this adds a contextual link to that which will bring up in overly module a page that edits Just that field on that entity and offers you the ability to do handle revisions When you have complicated nodes Because when you're a media company your nodes can have lots of little things by lines and this kind of content and that kind of content It's really convenient to be able to edit things Isolated from each other so that you're not overwhelming your content people. That's what this does They get to look at the content say I want to edit this little piece. Boom. You got the thing In the future, I want to be able to create bundles of this So you can put more than one field in one of these boxes and create little groups of fields that have pains But that's a future thing right now. It's one field, but still that's really handy and it's a tiny module it's just called FAPE and The the back end of it the page that edits the field isn't tied to panels at all So if you don't care about the panel's aspect you can still create your own interface to that edit form Handles proper access control and use that in your own system even without panels so That's a nice little addition to Drupal that I think was sorely needed This one isn't really panels, but it's being used heavily with panels and I wanted to talk about it anyway partly because iVillage supported it funded it They had a need to be able to create revisions and then say well I want to publish this at midnight so that it swaps over and it's a common need in Drupal And there's a module out there that actually two or three modules out there that do it In in Drupal like the workbench moderation module and there's another revisioning module out there and They all have problems and this module has problems too. I had to pick different problems to accept The problems they had were unacceptable for our purpose and I wasn't able to repurpose them So I ended up duplicating them, but it's it's different because One this is entity agnostic much like panelizer you can attach this to whatever entity you want This was needed because they needed this for the fieldable panel panes And workbench moderation just simply would never have been able to do that but more importantly I Took a different approach their approach was when the node is being Viewed that was when they would swap out which one you actually see I went to the other side when you go to edit the node I swap out which one you actually edit so the published one is always the the current revision But the one that's being edited is another revision And there's a bunch of really sneaky and underhanded and possibly not good code in the background To make sure that when you save that node the right things happen because field API is kind of you're not supposed to edit anything Other than the current revision so it it's really cheap and and silly, but it works and The nice thing about it is you're editing that revision and it's completely invisible to the user there's a Henryk recidivi did a little video on the entity revision manager It might be worth googling for that if you're interested in this to kind of see what it does because it's the actual demo is really short It's there's a little checkbox that says do I want to publish this revision when I make it? and do I want to schedule that for a certain time and The schedule works both on cron and on view so it will actually check so your scheduling happens immediately as needed And it also can work on Entities which means for the commerce people this could be expend expended to work on your products if you need to revision your catalog and make massive changes that go out at a certain time So it's a neat little module Henryk is also working on a patch one thing it doesn't do is unpublish on schedule But there's a patch in the queue that will do that and I'm hoping that we're getting close to being able to commit that for the next version Finally the last slide almost last slide is Distribution called penopoly I haven't had a chance to play with this a lot yet I've tried to install it, but I've been kind of busy leading up to Drupal con it happens But I really wanted to get into this and make sure that this is something good just last night Matt added some Content some starter content which was something that it was missing when I first installed it So I got through this installation, and then I was left with an empty Drupal site And just like every other empty Drupal site. It's like oh, what do I do now? So having some starter content to kind of lead you down the path to just you know see it when you're demoing it Should be a big deal But I haven't had a chance to install it and look at that content because he did it last night And I haven't had any free time since But I I would love for people to look at this and start providing some feedback About things they would like to see it's more than just panels. I mean it comes with a a whizzy wig and a bunch of Fieldable pains that you can start off with and a bunch of node types and Just a lot of stuff that they find themselves using over and over and over again when they're building sites But they think a lot of people will just really ramp up the getting started and make things easier So I'm excited about this and I'm hoping that over the next few months This will grow into something a lot of people use That was And that's the end of my slides so Internet willing I'm now going to start demoing some of this although and hopefully you've all seen this link to get to the surveys But they're encouraging everyone to go fill out surveys at the end. So please do and tell them I did well all right, let's Now my internet here has been a little Week so I'm just going to hope that this works this is my Dev site there's not much here to see immediately and I need to go to Yes, you love those test nodes there where I was just Sometimes I make up words sometimes I'm just like hit the keyboard Wait, wait, wait, there we go. So I'm going to show you first the new IP for those that are familiar with the IP in its previous incarnation The first thing you'll notice here is the bottom bar is now full screen And instead of having one button it has two No, believe it or not. I spent more time Adding the second button than I did adding the functionality for that second button Yeah, it needed a little recoding to support more buttons, but now I can add more buttons all that all I want so Let's go ahead and change the layout We've done a little bit of redesign on the layout changer And yay slow internet there we go so We get to instead of having the radios. We'll just let us pick a new layout and This one And we'll see if that's actually that I was using there's supposed to be a box around the current layout Yeah, that's the one. I was currently using so luckily we have a back button down here I'll pick a different layout this one and Now what I'm presented with instead of formerly when you changed layouts You were given a bunch of select widgets that said for content that was in this region. Where should I put it in the new layout? I decided to just show you the layout and now there is a pain that represents the region of the old layout And if you're not sure what was in that region you can open this up and see which pains were in there And then of course drag them around so the stuff that was on the top I probably actually want you in the middle, so we'll just drag that over here and then Scroll down a little bit and save And then in place That stuff will all change and now the stuff that was on the top that was going all the way across is no longer doing that and now The redesign this used to be really really ugly and I had done the best I could but I'm not a designer So I'm very happy that we have a real designer to make this look nice And I think we still need a little work It hasn't been optimized for example for a small screen and you can kind of see it here But it even with needing a little tweaks a little bit of tweaks here and there. I think it's a lot better I mean you've got much more visible drags. This is much more obvious what it does We've switched to icons here and there's a little hovers So it's not immediately obvious what the icon does being able to change the style as a new feature Deleting one is obviously not But you know moving this stuff over here. That's pretty easy Maybe I don't want to do that. So I can go through that But I actually do want to do that and then wait and then now one of the other little tweaks that we did was The throbber used to show up down on the button And I made it in the middle of the page to kind of let you know that you shouldn't be clicking Well, it's doing its Ajax stuff and now everything is in the middle because I don't know I was silly putting it there The other little thing that I'm not going to be able to show you very well because there's only one of me Is that it used to totally break with locks? But now the Ipe properly locks if I click this at this point This is now locked for changes if another user who has the permission to use the Ipe comes over and clicks that button What they'll get is a little pop-up that says this is now locked Someone has unsaved changes this lock has been in place for X time Would you like to blow away their changes so you can change it or cancel and go back to the way you were? Blowing away is really nice if someone say left their thing open for a week and didn't close it But unlike other things like views Views if you just leave the page and come back your unsaved changes are still there Ipe has no way to do that. So it's smart if I just hit refresh That actually sent an Ajax request when I hit that and it cleared my lock So my unsaved changes are completely gone as soon as I refresh the page But since there's no way to get back to that That's probably okay, and I don't think most people are gonna care and those are changes on the Ipe Anyone have any questions about that before I move on to another little system? That one over there Will the UI improvements in the? Well, we'll be will the improvements to the Ipe be Moved back to the may a back-end editor. Um, I don't know. It's not something I've thought about I'm not sure that Many of those improvements are necessary for the back-end editor partly because that back-end editor won't be seen more by site builders And a lot of those improvements will not necessarily be as much of an improvement there Because this was meant to be seen with your content and on the back-end editor. You're not seeing the content You're seeing placeholders for the content We probably could do another design pass on that drag and drop But it is a completely different drag-and-drop Piece of code. They're actually totally different code paths The Ipe is actually using jQuery, but the back-end one predates the jQuery UI stuff Back there How about you come up to the microphone because I can't hear you And Fact if anyone else has a question you might as well just line up that'll be quicker Panel's locker that you were talking about earlier respected in the in-place editor and when does that happen? the the panel's lock is Respected by the in-place editor and it happens as soon as you click either of these two buttons And then you have a lock on that and that lock is removed as soon as you either save or cancel or leave the page I mean, I'm talking about the pain in a particular region. You were talking about earlier in the time Yeah, oh locking a pain into a region. That's a different lock That was a control lock if you want to see about locking a pain. I'll have to go to the back-end editor for that Which I can do pretty easily That happens as part of configuring the pain. Oh Internet There we go Content this went so much faster when I was going through it at the apartment I was not told that there was a presenter Wi-Fi or and I don't have any credentials for it so at the moment no and Then Locking so right there it says there's no lock and I hit change And then I get the lock configure form eventually. Where is it? There it is and I can say immovable and that means no one will be able to move it Or I can say to regions and I can select which regions it can be in you notice that the region It is currently in is required. I can't lock it out of a region. It actually is already in although it is Possible to confuse it and move it where the back-end doesn't know it's been moved I'm just going to hope people won't do that because there's no fix for that It's the front end doesn't tell the back-end when things have been moved where things have been moved until it's saved So it would be very hard to fix but that pain As you can see has a slightly different color and when I hover over it can't be moved at all here And when I go back to Save that Savory didn't happen. Yeah, there's a specific permission for locking. It's a single permission You can either have the ability to lock or not the nice thing about that is is that most content people Even if you give them the permission to unlock things They're smart enough to know that if it's locked somebody wanted it that way and they shouldn't mess with it unless they've been told they can't So even if you give them that permission Usually you can trust your content people if you couldn't trust your content people to not mess up the site Intentionally, I mean you can't trust them not to mess it up accidentally But that's the whole point of the locks is so they know and now when I hit the IP e It's respected in both it can't be moved here either See I don't I don't have the drag-and-drop icon at all If it was if it was locked to that region though, you'd have it if it was locked to the region I would have it and when I tried to drag it to another region the landing zone simply wouldn't show up Thank you Hold on we got a we got a cue Hello as part of our development practices We tend to feature up panels for progression to a live environment a little closer to the microphone. I can't hear you Hello test as part of our development practices We tend to feature up a lot of our panels for progression to the live environment But we'd also like to give this ability to our content editors Can you think of a decent process flow such that it doesn't become overridden on live? Which prevents largely our ability to make changes and push them up at I village what they're using is they're using deploy module So their content people only go to a staging site They make all their changes and then they use deploy to set up a I want to deploy this content And then it happens as part of a package. I haven't been too personally involved with the deploy setup, but a lot of work was done by my compatriots at I01 to make that work And everything that I've written here like field fieldable panel panes They were meant to work with deploy and one little thing about fieldable panel panes is they actually support you ID silently So if you have you ID module on They will completely try to use that behind the scenes rather than their own internal IDs Hi, hello So you've added this CSS feature, which is awesome But what I'm wondering is performance wise. Did you do you already? Do you add your CSS to the cache that's inside of Drupal or is it imported live and dynamically added to the page? It's a it's like performance wise. Is it still more efficient to? Export everything out into your theme style sheet Which CSS you're talking about because we haven't like see CSS inside of pain like you, you know, you can stylize. Oh, yeah Yeah, okay, so The internal CSS tool when you do that it will store that CSS Partly in the database, but more importantly in the file system This works almost exactly the way aggregation works. So that CSS file then looks like sites all files publics C tools CSS Then that can be aggregated with normal CSS So it will be no less efficient than any other CSS Beautiful. Thank you. You're welcome. So back on the on the wait. Is this a trick question? No, it's not It sort of is but back on the pain locking. Yeah Doesn't the ability to change layouts have a Significant effect there because if I were to change the layouts then I would have the ability to move all the content in a region Right, I don't have the ability to select say every region for every layout that's available when that that's true And that is a bit of an issue you can only move The entire content of a region with that UI So if there's three locked panes and two unlocked panes you have to move those locked panes as a unit so You could theoretically move that entire system into a region that it's not supposed to be in Also changing layout is a separate permission and if you're heavily utilizing locks You probably don't want them to change layouts Okay, that was the follow-up questions and then the other aspect of that is if you do let them change layouts You can give them a set of layouts that all have the same set of region IDs Which means the locks will continue to work so You have some flexibility there, but that is something to keep in mind you could give yourself trouble if you try to use that feature without thinking about the aspect ramifications of layout change All right another question about locking Currently you don't have the ability to drag that block right is locked But I see that the garbage can is still there so you can delete the block Is there a way to turn that on that is a feature that will show up in the next version? That's something that we didn't think about but yet locking it from being deleted is something we need and will happen Pretty soon. I'm pretty sure that I'll show up within two weeks. In fact. All right That seems to be the questions for here Let me let me show you panelizer It's it's hard to envision what panelizer does even when you see it I don't know if a 3g will be any faster, so but thank you, but setting it up will probably take longer so Thanks for the tweets My phone buzzes every time you mention me So I know I'm doing something right when my phone keeps buzzing or maybe wrong. It could go the other way So panelizer and I don't know why but panelizer has it's a Admin UI over under configuration when every other panel's thing is under site building I Don't know how it got there. Maybe Damien put it there actually I Can't remember because I know Damien helped a lot with the d6 to d7 Conversion and I think that's when it ended up here and now it's too annoying to move So at some point I may move it. I don't know I hate moving things once they're in place Just because even if it makes more sense that it's in another place Everyone has used to it in one place and they go where did it go? So I don't know it six and one half a dozen the other so as you can see here, I've got a Security update Didn't know that I have the ability to control users by bundle interestingly, there are no user bundles in Theory it might even be possible to add user bundles, but I don't think so Because you can't change the bundle on an entity So you can't create a user with a bundle other than the default But I don't know maybe someday someone will address that if they do this will Support it I Can do taxonomy vocabularies? Which means or sorry I can do taxonomy terms and then the bundles are the vocabulary That means that when you want to have your genre vocabulary look completely different From your tags vocabulary You can do that just by selecting one of these and Controlling the default panel or the choices One of the interesting things here is that if you have One term in your genre category that you want to look different from everything else you can do that by giving that term its own panel Which sounds like why would you want to do that? And I bet people who are dealing with con with media heavy sites Probably have use cases for that And then of course there's nodes so the options we have here are Panelized it or not so if you don't panelize it the node is ignored the bundles ignored and then there's two little checkbox that are provide panel and Allow panel choice What provide default panel means is that all? Entities of that bundle type will automatically get that the default panel layout Regardless of settings on the node and then everything is panelized So if you want all nodes of type article to look with this layout you would select that give it a default layout What panel choice means is that you can create a list of potential Layouts and those can be selected by a little select widget when editing or creating the node If you give them a choice without a default Then they will only get a layout if selected if you give them a choice with a default all nodes That have never made a selection will get the default But when editing or adding a node you can pick a different one and then the list of choices Looks an awful lot like the list of pages or any other things if you're familiar with the c-tools export UI Because this is in fact using the c-tools export UI And then We have all of these choices Which are editing the content layout context? And a bunch of other things for each one of these So if I go and add an article node because I've got choice on that when I Get to the page Getting there. I Will have a widget Down here under penalizer where I get to say which one it is and I never renamed the default one But I could Or I can pick from the other ones that I set up one important use case that I have seen for this one is I could do this on my users and allow my users to control which of the layouts I have provided for their profile page so If I want to provide 10 boom they select them and then they see what they look like and Because you can embed css directly into each of these you could even go so far as to completely change the color scheme on their pages based on what you put in here so Lots and lots of possibilities and as I said earlier every one of these actions layout context settings and all of that have permissions I Could have just permission to get to this and never be able to actually overwrite it Or I could give them permission to this and let them change the content so they could move stuff around And if I did that I could lock certain pains in and only allow them to move certain bits around lots and lots of choices and I can lock it down very well That in a nutshell is panelizer Anyone have any questions about that one? If you do just head up to the microphone so this looks a lot like What's provided already in like node overrides? Yes, like for a node I could say I'm gonna have a node at node node ID and then essentially do this through Context or selection rules. That's correct. So in fact it uses that mechanism So yeah, so is this a way of if I went in through that door Would I see these configurations reflected or are these totally separate? But they do pretty much the same thing what you will see Yeah, there it is What you will see in page manager I assume you're talking about page manager with the variants You will see that panelizer has a variant right there and that is how this actually works and panelizer will say Oh, hey, I've got an entity. Is it panelized? I'm going to use that panel and exit out right there That actually means that you could put rules above this for some very specific things and abort even before it gets to panelizer You could also put some fallbacks so that if things have not been panelized do it differently if I wanted to One use case for that might be because panelizer requires you to set it up differently for every bundle Because we're trying to allow lots of options if I have one that I want to work for six different bundles I could put that here instead Just you know different possibilities But for a lot of use cases you will stop using this and instead use panelizer Cool, and thanks for answering my dumb questions on IRC too. No problem. I Think we're running short on time. I'm ending in five minutes, right? I'll talk really quickly. Yeah so the The reason the panelizer menu is under configuration is because in triple six it was under the settings Is it so it was my fault? Okay. I don't remember we can I'll do a patch later It turns out to be a complicated patch just to warn you There's a lot of paths Yeah, search replace So what are your thoughts on using panelizer to have a default per role and then allowing users to change their layout by role rather than specifically just a Catch all because user roles don't fall into the bundle the structure Did everyone hear that it's a little quiet, but talking about using panelizer to do defaults by role The problem with that is that roles are not I have a role. I have Zero to many of the possible roles. So you have to figure out how you handle conflicts What if I go in and turn on every role in the system for this user? Which of the eight possible panels does it get right? So I guess it kind of would be better to fall back to setting up different rules through page manager If you're doing it by role. Yes, I think that's the way you have to do it. Okay, and Do any of the scheduling modules work with Panelizer changes the ERS module works with panelizer perfectly well However, oh, no, no, no, it actually and it even works with I pe although No, actually it works fine with I pe because what happens is the I pe will edit the draft No, I'm sorry. It won't it does not work with I pe the problem and the reason I'm sorry And the reason for that is I pe is looking at the the published product when you hit edit You're supposed to edit the draft, but it could look completely different and it has no way to do that Thank you so I Have one more minute any last question. I missed a bunch of things. I wanted to talk about but I got 15 Oh, good. I can talk about other stuff then. Thank you My error. I only looked at when the session started In that case I Should move on I was panelizers covered everyone understands that All right Good enough All right, the fieldable panel panes module Managing fieldable panel panes is an awful lot like managing nodes in the you get a list Eventually there it is Except I'm not going to give you the list them We're going to the main panel UI here, but you get a list. I'm man. I'm buzzing all over a list You get a list of all the paint the pains you have with the ability to edit them again It looks a lot like the C tools export UI although this would be in fact is not because they're entities and the C tools Export UI does not actually work for entities So it is actually a view that lists them it's hidden back in the system. I May have lost internet that these others weren't taking this long You're actually killing the internet with Twitter, I think you should give yourselves a hand for Twitter and tweeting that much Someone is killing the internet though, so I guess I'm just have to talk about it for a minute But what you'll get is the list and you'll be able to look at the fieldable panel pains and what they look like You'll be able to edit them. There are tabs to control the access control But most importantly when you're editing a panel when you click that add content thing You will get usually it's on the left, but if you select the bundles you can control it Oh, hey, I finally got a page. I Got the entities tab up here So that's where it is You will get a little thing that says new panel pain where you'll be able to create it just for that pain upload your files or whatever I keep saying upload files because that's the primary usage for it. It was the one thing that the custom content couldn't do But that may not be the only thing you do with it once you're using this you may just use it a lot Because it's an entity you can't export it normally because entities and field AP are really hard to export But you can use deploy module So you do have ways of getting this from a staging site to finish site So like with nodes or users you have managed fields and managed display Now I only have one bundle here one little caveat I didn't add a UI for adding new bundles, but hook entity info altar can add bundles and the readme comes with an example Thank you. I Guess I'm gonna switch my internet over Maybe it'll be faster. I probably shouldn't because then it will no longer be exhibitor internet, and then it will be just as slow as everything else Let's see if this actually works I'll try lowercase first $99 for a day. Wow All right, that worked. All right Let's come back over here. Oh, that was a lot faster. Thank you Okay Everyone give Michelle a hand for doing that for us All right, so like I was saying there's the Fields, I mean you've used field you API. I don't really need to show you this I've got fields on my bundle as I was saying you can add fields through hook entity info altar there's an example in the readme.txt that comes with fieldable panel panes and People who've used this have told me it takes five or ten minutes and you hit load and there's your new bundles there The only caveat is watch out for deleting bundles because if you delete a bundle and there's content in that bundle That content gets orphaned and there's not much you can do about it So if you're going to remove a bundle be sure you go through and remove all the content in that bundle And when we go through list it's easy to find because you list it per bundle So at least you can find it quickly And because this is a view you could use VBO to create a view to allow you to mass delete stuff So if you've never used VBO to create a view to mass delete stuff put that into your toolbox because it's really handy And that's kind of fieldable panel panes. Let me show you adding one Unsurprisingly it looks like adding a node. We've got a title. We've got a body and the other things we have are if I make it Reusable, I've got category and administrative title for what it's going to show up as in the ad content dialogue Go for it This is awesome by the way And it is really easy to write a new bundle. I did it during Earl's class on Monday takes five minutes I'm curious about Managing the content of the entities and I have this same issue right now with custom C tools content, right? Users are going to the content tab to manage content. Yes, what's the reasoning for not kind of including those things in that area? because the manage content tab actually means manage nodes and we have we have Errored in my opinion in renaming nodes to content at the same time as adding entities Which are other types of content that are not content? Yeah, because I well like if you go to You know admin content you have Content, which is the nodes, but you can also see Comments as a tab and now media module. Oh sure puts a media tab there And the reason we couldn't get things like fieldable panel page. There's no reason. We couldn't to be honest I'm simply never thought about it, okay? so There would be no real reason not to do that. Honestly, it would probably just be a view so People who are interested in this may be creative you and submit it So been a patch. I'll work on it Can we see what the UI looks like when you're adding a fieldable panel pan to an actual panel? That is actually where I was going So while you can ask while I'm doing that I would be interested in whether these fieldable panel panes are translatable for example with entity translation Yep, they're entities, so they should be translatable just like every other entity. I don't know a lot about translation So I don't know the ins and outs of it, but any entity should be translated about the same way. I think Yeah So over here on the left. I've got my panel's pane that is created by the bundle In the code I can control what category that appears in this appears top level Because there's a flag that says so but I can actually put it in a category So I don't have to have all of them there, although that's a really convenient place for it and now I'm in The the overlay or the modal with the very same UI. We just saw a little bit ago Except by default earlier, you saw that this make this entity reusable was checked here It is not checked, but if I check it Then I get to choose a category and it will show up later That does mean that if I have one that it's in a panel that was not reusable If I can find it which managing content it can be tricky I can go back and make it reusable if I wish How about WYSIWYG integration? Um Well, it is integrated with WYSIWYG as well as anything in the modal is integrated with WYSIWYG. That's something I still have to look into WYSIWYG Last I checked had still had issues with ladies lazy loading its JavaScript That is no longer as much my problem as it is WYSIWYG's But I'm probably going to be looking into it anyway because my clients are starting to want that. Okay. Thank you I want to have a different piece of content By the way, most people may not know this But cancel now actually takes you back to the ad page. It didn't used to it used to close the dialogue Just one of those little new things For this node so Yeah, that's that's a bug that I've seen it'll be fixed in the next version. It's just a notice so it doesn't hurt anything So when adding fields you get default for matters. There's a patch to make this age-axe It's not in yet, but it probably will be eventually So right now it's actually a two-page system. So that format or had no settings. So we just get a blank page And I've got where did I add that pain? Where did I add that pain do that again? I wanted it over here. Good thing. We have faster internet Yeah, that's weird. I haven't seen that happen before Maybe I did something wrong Or maybe there's a bug because that would never happen Let's try that again Never never ever have bugs like I said, I just released this a couple days ago It would be weird if there were bugs There weren't fresh new bugs Yeah, go ahead and ask Yeah, that original panel pain entity Yeah, that also be like an entity info alter situation if I didn't like the name of that Yep, you can change it remove it Again, if you remove it make sure it has no content associated with it first But other than that once you've done that remove it it's safe So doesn't need to be there What did I do? There's something weird going on there Huh, that's a bug that I could swear I fixed but I'll look into that when I get back. Oh, no, it's there Thank you. Yeah, yeah So it should still show it. I don't know why it's not but at least it did add it Yeah, there's supposed to be a placeholder. It's possible the redesign broke the placeholder That you know never happens Because I didn't look at the placeholder when we did the redesign And I don't think I had any empty pains. So I guess what I really need to do is edit the node and add a body No, there is a body It's just not rendering That's gonna make it really hard to show you this Well, I got an image field. No, that's just the whole node It could also be confused by ERS stuff as well That one has a body. I don't think this one's panelized so I can show you if you have a node That has never been panelized and has no default. That's how you panelize it you get a little button that Sounds kind of cool, and then suddenly you have all this And it gets a pre lame default. That's okay one more time and I'm running out of time again Go ahead and ask your question. Well, I fight with this just thank you With the body scroll down After the refresh One minute one minute. Oh my gonna make it. There's my body feel and then I hover over And I've got edit field and in the overlay So this one actually kind of requires overlay module to work because that seemed like the best way to do it I now have the edit for just that field and Nothing else other than revisions, which are not supported on this no time and as I said this form is Accessible through other means that don't need panels, so you could use this and just use it in ways that work for you Yes, sir. Yeah, yours doesn't seem to be available for a reason or It should be available Drupal dot org slash project slash er s I don't think it has an official release yet. You still have to use the Yeah, okay, you have to go to view all releases. Sorry. It's still technically experimental because it's so crazy I haven't done an official release for it. So you have to get it out of get So if you're not comfortable getting modules out of get you're gonna have to wait a bit I don't want to do a release until Henry's patch to do on publishing is in because it doesn't feel right without that All right, I have half a minute left any other questions All right. Thank you all for attending Have a great Drupal con fill out surveys