Jump to content


  • Content Count

  • Joined

  • Last visited

Community Reputation

14 Good

About joe_g

  • Rank
    Sr. Member

Recent Profile Visitors

4,159 profile views
  1. I managed to get this to work by instead upgrading the site on the live server. I still got the 'start is reserved word' error, but the trick from @adrian worked in this case. I just renamed the table field_start -> field_start2, then in the fields table as well. I change the code accordingly. Worked really well. To answer @kongondo: No its' not multilingual, nor multisite. Also not running mod_security. Not sure why this update wouldn't work on my dev server. Both servers are running php 7.3. I suspect I had some other issue with permissions and template caching on my server, possibly unrelated to the above.
  2. Thanks for your help. The version is ProcessWire 3.0.36 © 2020, so perhaps not mega old. Looks like I have other problems than just the field name. It's more some server compatibility thing, I think. I tried again to copy the site to my dev server getting a similar result as before: Setup -> fields -> FIELD result in a blank page, where you only see the the processwire header and footer. The white part where you are supposed to edit the field is blank. It's the same for modules and templates. The pages tree works as normal but I cant edit templates, fields or modules. Weird 🙂 I get this error when trying to look at the modules page: Warning: count(): Parameter must be an array or an object that implements Countable in [...]/InputfieldFile.module on line 441
  3. Hi, I have an old site that is using the field name 'start'. This is now a reserved word, so I cant update without error. I also can't run the site since its too old. Is there a way I can rename the field in the database so I can upgrade the site? thanks!
  4. Yes, that's one way - but slow. Four words would be a lot of searches, then some PageArray gymnastics to remove duplicates...
  5. When doing an OR search like text~=A|B|C This gives results that contains just "A", as well as "A B C". The results gets ordered in whatever manner they are ordered in the CMS, unless specifically sorted on a field. What I want, however, is to show the results that contain "A B C" first, then the results that contain "A C", "B C", "A B" afterwards, and then finally the results that contain only "A", or "B" or "C" possible? Thanks! Bonus points for being able to de-emphasize filler words like "my", "if", etc. But I realize this might be a bit too advanced?
  6. Yeah, I can see how things leans towards twig and similar. What I run into with twig and the likes is lots of small annoying exceptions: Like, I have to do something with the second last item in a list, for example. My sites are usually quite simple, mostly pulling stuff from the API and showing it. So there isn't enough actual 'logic' to warrant MVC, only simpler "layout logic" (like re-order, truncate, etc). This is why I'm mourning the loss of the (to me) perfect solution of <?foreach():?> One confusing thing is that quite a lot of hosts still allow shorttags with php 7+, just not all..... I'm sure there is a discussion somewhere about shorttags, but it seems it's not 100% consensus that they need to go. But I should probably just get used to some MVC templating 🙂
  7. Yes, it's not finished. My point is the syntax. I'm looking for a way to avoid having html inside php. In other words avoid this $imgOrCount = '<img src="'. $project->iconimage->size(800,800,['upscaling'=>false, 'cropping'=>false]). '">'; for me personally, this way of writing makes it a bit harder to spot errors (like forgetting a ", or similar). It's just that <?php foreach($projects as $project):?> is a lot less readable than <?foreach($projects as $project):?> if you write a lot of this type of statements
  8. I'm currently doing this. But it makes my eyes bleeeeed. On top of that, sublime can't handle the tabulation properly with this syntax 😮 <div class="projects"> <?php foreach($projects as $project):?> <div class="project"> <?php if($project->iconimage):?> <?php $thumb = $project->iconimage->size(800,800,['upscaling'=>false, 'cropping'=>false]); ?> <img src="<?=$thumb->url?>"> <?php else:?> <?php $total = count($pages->get('/missingimages')->missingimages); ?> <img src="<?=$thumb->url?>"> <?php endif;?> </div> <?php endforeach;?> </div>
  9. Hi everyone, I just wanted to see what your opinions were on this matter. I'm a big fan of php's template syntax: <?foreach():?> <?endforeach?> It produces nice HTML highlighting. I've notices that some hosting companies removing the support for short tags while upgrading to PHP 7. This makes the template syntax a lot less attractive. What do you use? Am I stuck in the past? Should I just use twig? thank you, j
  10. thanks! yes indeed — very sharp-eyed — that seemed to be causing the problem. not sure i understand fully what you mean with created and saved vs. added. But the created date is used on purpose so that it only happens once.
  11. Hi there, I have the following hook that loops through and overloads a date. It's a template type book page. This page also has the field image. My problem is, with this code I need to save the book page twice for an image thumbnail to be generated - even there is no mentioning of the image field in the code. (I need to press publish, then save). If I only press "publish" once, the 'book' page will not get an image thumbnail. In some way the code below cancels the image generation for this page, but I can't figure out why - or how it's connected..? $pages->addHookAfter('saveReady', function($event) { $p = $event->arguments(0); if($p->template->name == 'book') { $lastcreated = $parent->lastcreated; if($p->created > $lastcreated) { $p->parent->lastcreated = $p->created; } $p->parent->save(); } });
  12. Hi, is there a way I can do something like? $p->find->('sort=-children:eq(0).created,limit='.$limit); In other words, sort by the first childs value of a field. thanks, J
  13. Interesting! times is a repeater with "startdate" (date) "enddate" (date) and "occasion" (string). My function above loops through them to get the earliest start date and latest enddate, and store them in the parent page event, The clients adds a bunch of times (repeater), saves the "event", and then the times are gone. They would have to enter the times again. Now after testing a bunch of times, it does seem to relate to required field: If i skip the required startdate, create 3 times, and press save one of the times was missing. But this only happened twice, then not at all when trying to 10 times more ! Strange, but not the end of the world. But it does seem that the required error message does affect saving a bit.....
  14. tx I'll try that and see if it helps!
  • Create New...