
MSP01
Members-
Posts
95 -
Joined
-
Last visited
Everything posted by MSP01
-
Little feedback on the module pages. 1) Search does not seem to include the header in the results (e.g. searching "Admin Action" does not find ProcessAdminActions module). Is this because there's just one giant textarea field that includes all the text in the main content area? 2) It's not immediately clear what the modules classname is. In the old version it was clearly marked, on the new page you have to know it's the heading on the blue. It might be a good idea to add this in a clear way on the right hand bar or somewhere else where people new to PW will easily find it when they're looking to install modules. 3) Googling for modules will lead you to pages that don't work anymore (https://modules.processwire.com/modules/process-admin-actions/)
-
@WillyC Thanks WillyC. Does this meaning that PW caches queries (like field is loaded once although it is called multiple times within same page process) even if there is no ProCache or similar in use? Or is this a PDO layer feature? It would be nice if developer docs could cover a bit deeper the performance aspects and best practices relating to queries, PW basic caching out of the box, sql&PDO etc. since it is so easy to use lots of fields that drawn the performance in some point. @ryan
-
I did some tests (for example made 50 extra calls with variations in a loop) with Tracy debugger on question 2) but had no effect on PDO or Select queries in Tracy, which made me wonder. I don't have much knowledge about PDO layer but I guess its caching queries somehow.
-
This question relates to optimizing Page object, fields amount and SQL calls, and Auto Join option. In short I need to understand how ProcessWire handles next events: 1. I have a template, which calls for example $page->something->title and this is used for example 2 times in code like if simply ($page->something->title) echo $page->something->title; etc. The field "title" has not the Auto Join option enabled. Is this information loaded in $page object initially or will this fire 2 separate but similar SQL calls to load title, even in same that page and template process? 2. Let's have another example. We have $page loaded and the template has helper functions to get for example some settings value. Now we use this helper function to retrieve value like $pages->get('template=settings')->somesetting. This will fire SQL call I understand? How Auto Join would help with this? 3. Will enabling Auto Join on fields cause some performance issues outside certain Page object (field that relates to certain template that is used by Page) overall, like when site is loaded first time? Thank You @ryan Please can I also have your core developer opinion also here since this has significant impact on how the project code should be structured and this could help many thanks!
-
Thank you guys, The problem was eventually solved. Somebody handling the web server had left some checkbox or other unchecked and that's why nothing worked.
-
Does anyone know if using SMTP user without a password is a problem? Authentication is taken care of by something else in this case.
-
@adrian Unfortunately no. Tech support from the hosting company was also quite sure that the information we've entered is correct.
-
We are getting the "WireMailSmtpConfig: ERROR: SMTP settings did not work" error with these settings (real address replaced with ***). Local hostname: www.***.com SMTP Hostname: ***.mail.protection.outlook.com SMTP Port: 25 SMTP User: (required to be left empty) SMTP Password: (required to be left empty) Use START-TLS: Yes Authentication is made using something called O365 (assuming it means Office 365). Could this be the reason nothing works? Does WireMail: SMTP even work with user and password left empty? What does the Authentication Mechanism stand for? An IP address? In the front end when trying to submit from by Formbuilder I get "Notice: Undefined index: replyToName in ***.com/httpdocs/wire/core/WireMail.php on line 319
-
The problem is probably "Valid OAuth Redirect URIs" field in which you can find under Facebook Login in the app menu. Problem is, the URL for each page is different. How does one use dynamic URL for something like this? Perhaps the maker of the module can enlighten us.
-
Hi, All these settings are already correct. Another module (login-facebook) is working just fine. -Hurme
-
I guess I just solved this myself. I needed to use get instead of find in the: $removeParticipant = $eventPage->eventParticipant->find("eventParticipant_deletekey=".$removeKey); Or possibly use the include=hidden. Oh well. It works.
-
Hi, The input part is working fine, and gets passed to a form the user will use to confirm the deletion. A hook is ran when confirmation form is submitted, but frankly I'm very much stuck with actually deleting the repeater item part. $forms->addHookBefore('FormBuilderProcessor::saveForm', function($event) { $sanitizer = wire('sanitizer'); $page = wire('page'); $pages = wire('pages'); $form = $event->arguments(0); if($form->name != 'removesubmission' && $page->template != 'removeSubmission') return; $removeKey = $form->getChildByName('remove_deletekey')->value; $eventPage = $pages->get('template=event, eventParticipant.eventParticipant_deletekey='.$removeKey); if (!empty($eventPage->id)) { $eventPage->of(false); $removeParticipant = $eventPage->eventParticipant->find("eventParticipant_deletekey=".$removeKey); $eventPage->eventParticipant->remove($removeParticipant); $eventPage->save(); } }); There's lots of stuff missing still. But right now I'm just trying to kill the repeater (eventParticipant) item. So a deletekey gets passed from input into the confirmation form. This is picked up in the hook ($removeKey). The correct page and repeater item are found. But how do you actually delete the item? I've been looking into it for several hours now and no luck. The form runs, no errors, but nothing happens either.
-
Hi, We have a simple submission form where people can sign up. This sends an email to the person signing up. To allow submitter to remove themselves we sen a link with randomized unique ID along with the email. This unique ID is also part of the repeating field. How would one use an external link like this to either delete or disable one of the fields in a repeating field? Should we make a page that catches the ID and runs a hook based on that, or is there a better way?