Jump to content


  • Posts

  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

gornycreative's Achievements

Full Member

Full Member (4/6)



  1. This has been great. I just wanted to confirm one thing I noticed which is that _auto_desc doesn't seem to highlight/load a summary on partial word matches, although the search itself picks them up. So for example if I search for 'business' using a partial match operator, any article search_index that includes the whole word 'business' will create a summary with the word 'business' marked... and results will show up where businesses and businessmen are in the index, but no summary with a highlighted partial word appears. The summary for these entries is blank. Is this the intended behavior?
  2. Yes that's what I figured. Looking at it more closely, I think if I bring in the HTML.AdminThemeUikit class in rulesets for those modules I can guarantee more specific rules.
  3. It looks like this may be connected to a glitch in calculations for timestamps that account for daylight savings time. It looks like if you are in a timezone with daylight savings the UTC timestamp is advanced 60 minutes before it gets saved in the field. I have created an issue for it in github. Just explain further for the curious, I have a template with the following code: <p>Now: <?=( time() )?> Edited: <?=( $page->modified )?></p> And when I edit the page and save it, the output I get is this: CST (Central Standard Time) is -0600, but CDT (which we're currently in) is -0500 and if I expand the formatting to include the timezone name it is CDT - so the timezone is correct, it's just the extra calculation of the timestamp that is unnecessary - the field should preserve the timestamp as-is and let the session timezone dictate the offset. The time in the example should be 12:16:14 PM.
  4. I'm not sure I'm being clear. I can get my rules to compile and apply, but because they are loaded earlier in the css stack, stylesheets from modules are getting loaded later and in many cases where I want to override in the admin.less the rule gets struck out because another rule defined later in the loading order overrides it. So I can have rules like this in admin.less: //Awesomeplete for autocomplete modules .awesomplete > ul { background: hsla(0,0%,5%,.9); background: linear-gradient(to bottom right, @global-background, hsla(0,0%,5%,.8)); border: 1px solid rgba(255,255,255,.3); box-shadow: .05em .2em .6em rgba(0,0,0,.2); } .awesomplete > ul:before { background: @global-background; } And the rules and color overrides appear in the CSS but they are struck out because the autocomplete module awesomplete has its own rules that get loaded later by the module. To make the rules work the quick and dirty way I have to use: //Awesomeplete for autocomplete modules .awesomplete > ul { background: hsla(0,0%,5%,.9) !important; background: linear-gradient(to bottom right, @global-background, hsla(0,0%,5%,.8)) !important; border: 1px solid rgba(255,255,255,.3) !important; box-shadow: .05em .2em .6em rgba(0,0,0,.2); } .awesomplete > ul:before { background: @global-background !important; } Here's the loading order: So for example, because aos.min.css is loaded after Admin.css and AdminTheme.css, any rules I put in place to correct the default colors set in place by the module loading its own css are superseded unless I use !important or more properly use a rule with greater specificity than the original rule in aos.min.css - I'm guessing the css order is in place to allow module builders to have more control over the display for their module components.
  5. Is there a way to push admin.less rules to the end of the loading stack? I've run into a couple of situations building out a dark theme where I've had to use !important rules to override because it seems like the admin uikit css get loaded at the base and then additional admin module css get loaded on top of that. This applies both to admin styled areas in both core modules and 3rd party modules. For example, there are rules in the image editor pop-up that appears when you hover over a thumbnail that are already flagged important and can't be stated with more precision to force an override.
  6. That's an interesting way of doing it. Have you used the FieldtypeSelectExtOption module at all? Seems like it would be useful in that scenario. Only other thing I considered, as I thought about the original question, I find that when I want to to pass information to an include, I usually end up setting up a function to handle it. The _uikit.php file in the coffee site template made a lot more sense to me. I started out writing more includes but then realized setting up functions that I could pass arrays to made more sense and was a bit easier to work with once the functions themselves were done.
  7. My stuff is typically not that dynamic on the front side of things but I believe there are a number of users who have put together some pretty sophisticated partial loading methods with vue.js and other things that would probably cut back on the overhead if you are seriously concerned. I would think that the apps bringing in data to your dashboard probably have more overhead than pw, but I haven't built anything huge with it yet. Just digging around my links, it is old but you might consider looking at this for some ideas: https://github.com/microcipcip/processvue
  8. I typically start with the raw HTML output design and as I work I notice elements that I use often and break those into partials. In my _main I typically have the spacing and grid scaffolding for most items with the understanding I may embed nested structure as part of my individual page template, and then I will load includes into those embedded areas as needed. I see _main as the foundation and outer walls of the house. I see the page templates with their regions as different layouts of walls/rooms within that house. I see the furniture and features of the rooms of the house as partial includes. Whether you choose for the rooms themselves to be adaptable or not is really up to you. It isn't necessary to use partials at all, but I find it cuts down a little bit on the template counts. A common tradeoff seems to be between the amount of code you put into your template file region replacements/append/prepend etc vs the number of different templates you have, and whether you want the presentation routing to be directed more by the selection of the templates or programmatic responses to data in the fields your templates use. It is possible to have very few template files that reroute and alter the display based on tons of selections made on the pages themselves, or it is possible to have individual templates for all of the different scenarios you may want to come up with - but for complicated sites I tend to prefer fewer templates, more function controls. I would say that for the end user having lots of templates and transparent choices/structure on the pw backend is safer with clients. Because you can control a lot of things about adding new content, etc. it is less likely that the user may alter some value and cause some other glitches on the site that you don't expect unless you are pretty strict with your unit testing. But if you have code content that is really never anything the client is going to have to be actively involved in, bringing stuff like that into the code side keeps down the clutter. Hanna code sits somewhere in the middle and I always feel like it is playing with fire but that's a pretty happy bridge between the two worlds if you want to try to give placement control to the client but want to maintain logic control.
  9. Perhaps I've done this wrong, but modified times across the board are always an hour ahead because my server is set to UTC-5 but I'm in the UTC-6 timezone. I have set the timezone to America/Chicago in the site config. All clocks and set to NTP sync, but I still get warnings that someone started editing a page 60 minutes from now. Any other thoughts on what I may need to check?
  10. @adrian Thanks, it does. I wasn't sure if I'd need to dig into hooks on this or not. @teppo Just to confirm, looking at Renderer it also seems like there isn't a method off the bat to get the paginationString from the query... just count and total. Looks like I'd need to hook into renderResultsListSummary with a pagination check for that? I think I could get it from the magic get method?
  11. @adrian How are you able to extract image information along with the rest of the rendered results? I've tried adding item.image_field to the templates in a number of configurations and I can get the raw filename but not any of the other page image fields, e.g. httpUrl, height/width, etc.
  12. Does it make a difference if you move the negation? $items = $pages->find("template=basic-page, limit=$limit, !body=''");
  13. I'm trying to do something very simple, there must be something I'm missing. Search page with pagination. The find is nothing special: $results = $pages->find("search_index#=$q, limit=5, has_parent!=2"); Dumping a print_r yields what you'd expect: ProcessWire\PageArray Object ( [count] => 5 [total] => 8 [start] => 0 [limit] => 5 [pager] => 1 to 5 of 8 [items] => Array ( [Page:0] => Array ( [id] => 1211 [name] => brainstorming [parent] => /project-stages/ [template] => project-stage [title] => Brainstorming [_pfscore] => 1 ) ... etc etc [Page:4] => Array ( [id] => 1220 [name] => brand-engagement [parent] => /project-stages/ [template] => project-stage [title] => Brand Engagement [_pfscore] => 1 ) ) [selectors] => search_index#=business, limit=5, has_parent!=2 ) When I try to output $results->pager - I get NULL. The results I can pull, and the count I can pull, but for some reason other references are giving me NULL, even though there's obviously values there. What am I missing?
  • Create New...