Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


snobjorn last won the day on November 10 2020

snobjorn had the most liked content!

Community Reputation

64 Excellent

About snobjorn

  • Rank
    Sr. Member

Contact Methods

  • Website URL

Recent Profile Visitors

4,231 profile views
  1. I use the TfaEmail module to send emails with the Tfa code. The reason is that my users are familiar with email, not very technical otherwise, so that other Tfa solutions is a bit too advanced. Sometimes the email service is a bit slow, and the sending of email with codes might take a minute or two, so the users try again because they think the code has expired. So I was looking to implement another sentence in the email, after the code, that says "This code will expire at HH:ii". But I am at a loss on how to do this. At https://github.com/ryancramerdesign/TfaEmail/issues/1 I have requested this, but there might be easier ways like a hook or something? Any answer to put me in the right direction would be helpful. Other solutions that could help me with the issue (slow emails) is also very welcome.
  2. Can you paste the code from your template, related to the output of this textarea field, as well, @modifiedcontent?
  3. I got an answer to the issue. It was already fixed: https://github.com/processwire/processwire/commit/4d04aac2a646d6c387d1afff28253225dace8474 – and I can confirm that it works for me now as well.
  4. Currently version 4.7.0 of Font Awesom is used in ProcessWire for icons for templates and fields. Since its release, both version 5 have come – and version 6 is in the making. I would like to see a newer version in the future in ProcessWire, @ryan 4.7.0 (in ProcessWire) has around 675 icons as far as I can tell. The current Font Awesome version has around 1600 icons. When version 6 comes, theres around 2200 icons I have read.
  5. I can also recommend this course. Currently I am 40 % into it, and I have learned a lot.
  6. I have the following setup: Pages with two level URL segments, e.g. /this-page/urlsegment1/urlsegment2/ More than often, due to changes in the data set, the part of the url that is /this-page/ changes name to /this-page-something-else/ PagePathHistory (the modules is installed) saves previous names and handles all the redirects when it comes to the URL without URL segments. URL segmented pages returns 404 errors though Looking for a solution, I was thinking of using the information in the PagePathHistory like this: First, look for /this-page/urlsegment1/urlsegment2/, if it gives an 404 error: Second, look for /this-page/ in any pages PagePathHistory, if it exists: Third: Redirect to /this-page/'s new URL (/this-page-something-else/) I have tried: $pages->get("path=/this-page/") without luck (expecting no luck here) $pagePathHistory->getPage("/this-page/"), but this returns Fatal feil: Uncaught Error: Call to a member function getPage() Has anyone tried anything similar, with PagePathHistory, or maybe any third party modules?
  7. Thanks, @kongondo, I found it now. I did not try the console at first. I looked in /cache/WireTempDir/ though. Thinking I would see it since the default maxAge was 120 seconds, but it disappears after a second.
  8. I ran PHP 7.4 for a while, and ProcessWire ran fine. I had to downgrade to PHP 7.1 because of some issues in Matomo though. And they are both on the same host for me.
  9. So I have been looking in the core files for a clue on how $files->tempDir() works and where it is located, without any luck. Can anyone help me with where this is? I have gotten the method to work and all that, and have also set the maxAge to a lot (in order to have time to look for the temporary directory). But I am at a loss. I just want to know a little bit more about this.
  10. This sounds interesting. I will give it a try.
  11. $articles = $pages->find("template=article, fieldAuthors=$page"); foreach ($articles as $article) { // something like echo $article->title; } You could also skip a few lines of code if you put the extra fieldAuthors=$page in your selector. Then your pages->find only returns pages where the current page's author is present in fieldAuthors.
  12. I found a solution. At least the solution still works after some testing: Logging in, typing tfa, logging out, closing browser. The solution was to hook the redirect after ProcessLogin::afterLogin. $this->addHookAfter('ProcessLogin::afterLogin', null, function($event) { if($this->wire('user')) $this->wire('session')->redirect("/"); });
  13. I think I got a step closer. I have a few lines of code in a ready.php file to redirect the user to the front end after login. When I removed these lines, the browser login session at my ProcessWire page remembered me the next time, and did not ask for the two factor authentication code. There are the lines of code. I'm not sure about the first part being relevant, but they are part of ready.php anyway. $wire->addHookAfter('InputfieldPage::getSelectablePages', function($event) { if($event->object->name == 'avdeling') { $event->return = $event->pages->get("id=$event->user")->editor_unit; } }); $this->addHookAfter('Session::loginSuccess', null, function($event) { if($this->wire('user')) $this->wire('session')->redirect("/"); }); Does anyone know why these lines of code would make the login ask for the TFA code every time?
  14. if ($page->parent->template->name == "tags") { $field_name = "tag"; I guess this could work for what you are describing, on the child template (i.e. tag_and_category.php template). Just remove the space after parent->, and you might be good to go. 👍
  • Create New...