Jump to content


  • Content Count

  • Joined

  • Last visited

Community Reputation

9 Neutral

About michelangelo

  • Rank
    Full Member

Profile Information

  • Location
    Den Haag, NL

Recent Profile Visitors

335 profile views
  1. @teppo That's a good point about the Instagram policies, I will go over it once more. Maybe writing the scraper in PHP is better idea than switching to a completely different stack where I have to build the backend and everything from scratch. Thanks! Out of curiosity though: It is possible to run a python script with a cronjob, right?
  2. Hello everyone, I would like to ask for some advice on what options I have to build an app I have in mind. It will scrape images from instagram and save each of them as a PW page, then the admin can edit them and it will be displayed on the front-end. The challenge for me is to have a cronjob, to run a scraper maybe written in Python, and populate the database using the PW API. Is this sensible? Is it suitable to use PW for this or should I use another technology?
  3. @horst so I guess this will work If I hook that method every time I access www.website.com/api/ route? And then monitor how many requests I get. I just have to figure how to do those.
  4. Hello everybody, I am currently indulging myself into building a REST API based on a older project of mine. It's very simple where you can mainly retrieve information in JSON. It's similar to JSON Placeholder in the level of complexity. I am using the RestAPI Module and native ProcessWire API functions. Rate-Limit Throttling is something I want to implement because it's public without authentication, despite not extremely necessary. Now, is it better to utilise something like Token Bucket or ProcessWire already has some protection against too many requests? There is a simple Token Bucket library I found that is going to work but I want to limit the traffic only to the /api/ route, not to my whole website. All input is appreciated, later I will share the project here. Thanks!
  5. Thanks for the suggestion, however this has the same infinite loop effect as the ::loaded hook. It just goes Page::render -> Saml -> Page::render -> Saml -> ... Okay, that's silly but I just added a condition to actually check for the Saml Response. This way it doesn't try it after the user is in... Thanks @louisstephens if (!isset($_SESSION['samlUserdata'])) { // User not logged in to SAML $this->session->addHookBefore('PageRender::renderPage', $this, 'loginsaml'); }
  6. Hello guys, I have been setting up a SAML Auth for my website for a few days with SamlAuth and the last thing left is to hook the initial login to when the visitor loads for the first time any page of the website. The module uses ProcessLogin::renderLoginForm which is perfect for when a user accesses the admin but I want to close the whole website off. I don't want to use the PageProtector as I find it an overkill for such redirection purpose. I also tried Page::loaded which created an infinite loop 😃. So is there a Hook I can use or another method which makes more sense? Thank you!
  7. Hello guys, I saw that many people found the module SamlAuth useful and I wanted to try it. I have encountered an issue with the setup as I cannot verify the validity of the requests and it's quite hard to debug. The IDP we have is Azure, so most of the documentation is quite different from Onelogin or SimpleSAML. Everything works until I get this error which is quite vague: I have also the XML and certificates but I am not sure which one is the correct one :| Can somebody give me a hand by saying at least if I am in the right direction? Thank you!
  8. I managed to set up the SAML module until a certain point and now I get an error from the IDP: AADSTS750161: Allowed SAML authentication request's NameIDPolicy formats are: urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress,urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified,urn:oasis:names:tc:SAML:2.0:nameid-format:persistent,urn:oasis:names:tc:SAML:2.0:nameid-format:transient. Just wondering if anybody has a tip of how to fix it? I am not sure in the module settings where I can change these formats... EDIT: It was an actual attribute in settings.php... I just missed it...
  9. I am building a project where students will be able to access a website only if they authenticate with their student accounts. That's why we opted for this option.
  10. Hello @BillH, thank you for your comments and directions! I must have missed it by not searching for the right terms... I will just describe my thought process so you can tell me if I am correct: 0. Setup Page Protector and SAML Authentication Modules 1. Setup the Page Protector to stop the visitor from accessing any content 2. Redirect the user to an IDP where they will log in 3. ProcessWire recognises that and it opens the website...
  11. Hello guys, there are many topics on authentication of the superuser or APIs, but I couldn't find what I need: Can a visitor of the website be asked to authenticate? Just to see the website, without any permissions or back-end access? Is this possible with SAML?
  12. Thanks @MoritzLost! It worked now. Something was happening with the regex AND with my input. It's all good now!
  13. Thanks @MoritzLost! I will fix the issues with my regex now. The $link->textarea_short contains what I expect and it's a string. What I am trying to do is have the client enter a url from mixcloud, e.g. https://www.mixcloud.com/toddyflores/matinee-2015-formula-1-grand-prix-mixtape-by-toddy-flores/ and I will render the appropriate mixcloud iframe player. The iframe uses this structure: <iframe width="100%" height="60" src="https://www.mixcloud.com/widget/iframe/?hide_cover=1&mini=1&feed=%2Ftoddyflores%2Fmatinee-2015-formula-1-grand-prix-mixtape-by-toddy-flores%2F" frameborder="0" ></iframe> so everything in the feed i want to replace with the parsed channel and track. that's why: https://www.mixcloud.com/toddyflores/matinee-2015-formula-1-grand-prix-mixtape-by-toddy-flores/ // becomes ...feed=%2Ftoddyflores%2Fmatinee-2015-formula-1-grand-prix-mixtape-by-toddy-flores%2F... // this expression Why would preg_match() refuse to work with my variable $str?
  14. I am doing a very simple string parsing from a url taken from a Textarea inputField. It's all working fine if I define the link as a string, e.g. $str = 'some url', but if it is taken from the CMS it doesn't work... $str = $link->textarea_short; // this doesn't work // Expected Output: '<p>https://www.mixcloud.com/some-radio/</p>' // $str = '<p>https://www.mixcloud.com/some-radio/</p>'; // this works preg_match('/<p>https*:\/\/www\.mixcloud\.com(.*)<\/p>/', $str, $matches, PREG_OFFSET_CAPTURE); $str_url = $matches[1][0]; $str_url = str_replace('/', '%2F', $str_url); echo($str_url); This is the algorithm that I am working with: 1. Getting a url 2. Parsing it to extract what I need 3. Replacing some characters. In both cases if I echo the values I get the right result but in the preg_match() doesn't work. What am I doing wrong?
  • Create New...