Jump to content


  • Posts

  • Joined

  • Last visited

Recent Profile Visitors

563 profile views

awesomolocity's Achievements

Jr. Member

Jr. Member (3/6)



  1. Sometimes when I lay awake at night, I like to think about how cool the combo field is. (But seriously, I'm very excited to see it)
  2. Also interested to see that new ProFields module. I have a lot of guesses based on the name, but I guess we'll see exactly what it does when you release it!
  3. Yo, for real. I was just getting into him when he passed. But man, he was so talented. And his freestyles were off the charts! https://www.youtube.com/watch?v=s_DwqTNRIzM https://www.youtube.com/watch?v=bqKBIgol3kM
  4. Regarding the intro to the post, I'm glad to hear you and your family are doing well during this whole pandemic.
  5. Big fan of the implementation of this. I was still using soma's Module Manager with a quick hacky fix for the lack of pagination support. I am having an issue, however - when selecting the "Show All" category, it just shows nothing. Permanently. From what I can tell, it's not even sending an XHR request which is probably part of the problem. 😛 (For reference, I'm using PW version 3.0.158 dev) If that could be fixed, it would basically be perfect, imo. Edit: And I do agree with @Peter Knight about using a select rather than radio, and "Active" and "Inactive" seem to have more obvious meanings than "show only uninstalled", imo.
  6. There's a lot I use regularly, but one of my favorites is Soma's ModulesManager. Makes it much easier to install other modules lol It's worth noting though that Soma's module needs a slight update in order to work properly these days: https://github.com/Awesomolocity/ModulesManager/
  7. Interestingly enough, the latest dev version of /wire/core/WireMail.php has changed in a way that I believe addresses your issue. /** * Sanitize an email address or throw WireException if invalid or in blacklist * * @param string $email * @return string * @throws WireException * */ protected function sanitizeEmail($email) { if(!strlen($email)) return ''; $email = strtolower(trim($email)); if(strpos($email, ':') && preg_match('/^(.+):\d+$/', $email, $matches)) { // sending email in particular might sometimes be auto-generated from hostname // so remove trailing port, i.e. ':8888', if present since it will not validate $email = $matches[1]; } $clean = $this->wire('sanitizer')->email($email); if($email !== $clean) { throw new WireException("Invalid email address: " . $this->wire('sanitizer')->entities($email)); } /** @var WireMailTools $mail */ $mail = $this->wire('mail'); if($mail && $mail->isBlacklistEmail($email)) { throw new WireException("Email address not allowed: " . $this->wire('sanitizer')->entities($email)); } return $clean; } Looking at the comments, it seems like the email address you're using (processwire@localhost:8888?) is invalid due to the :8888. Try removing the port and see what happens. Edit: oh maybe it's because this thread is from 2018. WTF
  8. I'd like to ask (because I've been confused about this for a while) - what exactly is the benefit of this compared to something like Form Builder? Just the fact that the whole register / login flow is already coded for you rather than having to do it yourself? Main reason I'm asking is because like...while I certainly want both Form Builder and LoginRegisterPro, it seems like Form Builder is the better deal at only $10 more. But maybe I'm missing something.
  9. Hey, just btw - I added a pull request on your ModulesManager github page that would add support for the pagination that got added to the modules API.


    (You seem more active on here than github, so I figured I'd let you know lol)

  10. I wonder if this ruling could potentially apply to websites using Google's recaptcha.
  11. Okay, so I'm making some modifications to Ryan's LoginRegister module. Currently, I'm attempting to add a couple html attributes to the form. (Specifically "data-abide" - see Zurb Foundation). On line 515 of LoginRegister.module, I saw $form->attr('id', 'LoginRegisterForm'); so I attempted doing the same thing with my attribute, but it didn't work. $form->attr('data-abide', ''); Upon searching, it looks like the cause of the removal of attributes with no values is the getAttributesString() function in wire/core/inputfield.php, specifically line 1135 // skip over empty attributes if(!is_array($value) && !strlen("$value") && (!$value = $this->attr($attr))) continue; Now, I realize that I could just comment out that line and it works perfectly fine if I do. However, that doesn't really seem ideal since it'll break on updates. My question is: how should I go about doing this? Just comment out the line and hope Ryan removes it in the future? Or another way I hadn't thought of?
  12. @Robin S Actually the fish will be unique. Users will be able to name their fish, they'll sorta be unique. (But all from a list of species). But you did just help me visualize what I was thinking about. xD I could do User -> Aquarium -> Fish (with PageReference to Species)
  13. Alright. So I'm converting a site I already have to Processwire (really enjoying it so far!). I wanted to convert the previous tables that I had data in to Processwire pages. But I'm wondering what the optimal way to structure pages would be. So basically, I have three main tables. Users (and all accompanying information) Items (and all accompanying information) Aquariums (each user only has 1 aquarium. Currently, user_id is a FK) Fish (type of item. Aquariums may have multiple fish) Aqua_settings (Things like lightness, temperature, etc) So in my current setup, there are a lot of Foreign Keys. I could accomplish essentially the same thing by using the Page Reference field. Alternatively, I could make fish and aqua_settings both be children of Aquarium. I could differentiate by doing $aquarium->children('template=aqua_settings'); or something. So my question is...should I be using the Page Reference field or structuring the pages as children? (Or are both equally fine depending on how I want to go about doing things)
  • Create New...