Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 07/17/2016 in all areas

  1. Hello, guys! I've prepared an extract of my latest work for public usage: Template for ProcessWire with Stylus and PostCSS. It simplifies the development of the stylesheet and JS files with CSS preprocessors, autoprefixes and browser reloading. I hope it can be a good kickstart for your next project! https://github.com/leonidlezner/pwtemplate Released under MIT, no credits or copyright notices are necessary, so feel free to do with it whatever you want Update: Template works with 3.x too! And now with German Tutorial http://leogo.es/qvxul
    5 points
  2. Hi guys so currently am writing a detailed tutorial about creating Modules, I have never created a module because i don't know all the classes and interfaces required, so this is like a detailed research for me, this is how i learn things by writing articles. However I might make some mistakes so i decided to make it on Google Docs to get comments and feedback, before posting on my website and Processwire tutorial site, this is going to be one heck of a detailed tutorial. Here is the link I will be updating it https://docs.google.com/document/d/1VA_WK-5qbnq3Ux_EOW3p92IcjbAcVZJ0aewIiFxmv2Q/edit# However I wanted to get a clear picture of the following Process Class and ConfigurableModule i noticed some modules require it and some don't My interpretation is that Modules with admin setting pages uses ConfigurableModule and Process are modules who require access to $this->pages and that sort Thanks all
    2 points
  3. Hi everyone! I'm building some Liferay portlets for a call center and I'm looking for form engines like Alpaca Forms which is the one I'm currently using (and fits my needs), but I would only like to ask around if someone knows of a similar alternative when it comes to generating forms on the front.
    1 point
  4. @all, @johnteaksf. I just noticed that the forum upgrade seems to have cannibalised some of the content in my post about the new getMenuItems() method which allows for building of complex menus. I have contacted @Pete to see if I could get the content restored from an old backup. Part of the missing content addressed the advantages of returning menu object items rather than array items...
    1 point
  5. Interesting, Thanks for the comment, yeah it seems most of the content are not consolidated, it's the same issue i've been facing when trying to create a Module, I noticed some information were scattered in different places, so this will be go-to guide, thanks for the corrections. I will update the name i was typing it out and along the line i must have missed the proper name. Will include those resources.
    1 point
  6. Thanks for mentioning. I have updated it in the post. (It was written in the browser, so without syntax checker )
    1 point
  7. @SoccerGuy3, I'm not sure you've seen this, in the Tab Settings, right under 'Pages selectable in menu'? There's also a note on line #486 to the same effect. The normal practice is not to directly edit modules. Your 150 will get overwritten next time you upgrade Menu Builder and all will not be well . What you want to do is to use Page Auto Complete or Asm Select and add limit=150 to the setting above ('Pages selectable in menu')
    1 point
  8. You should do another nice Debugging like you have done with your GET string, to see whats going on: $itemsData = wire()->pages->find("template=portfolio-item"); echo "<pre>"; echo $itemsData InstanceOf PageArray ? "is PageArray\n" : "NOT a PageArray\n"; if($itemsData InstanceOf PageArray && count($itemsData)) { // we have at least one page in the collection, get the first one for testing $p = $itemsData->first(); echo $p InstanceOf Page ? "is Page\n" : "NOT a Page\n"; if($p InstanceOf Page && $p->viewable()) { echo $p->fields->has("$targetGrid") ? "Field $targetGrid exists\n" : "Field $targetGrid does NOT exist\n"; if($p->fields->has("$targetGrid")) { var_dump($p->$targetGrid); } } } echo "\n</pre>"; If you not already know it, here are a nice overview: http://cheatsheet.processwire.com/ PS: instead of $_GET you better should use wire('input')->get->targetGrid, or when in template scope: $input->get->targetGrid. Also don't forget to sanitize input values! $targetGrid = wire('sanitizer')->fieldName( wire('input')->get->targetGrid );
    1 point
  9. @Juergen To setup a cronjob is really easy, but you have to understand some basics first. The cronjob past has nothing to do with ProcessWire. It is a separate program running on your server which is able to run commands at a certain time. It is either configured in your hosting admin panel (easiest, ask your hosting provider) or you can set-up it yourself through the command line. You can follow this example if you're running a Linux based server. You need to understand that you can execute a PHP file from the command line. Teppo has provided us with such a script that will activate the link checker. The file is "/ProcessLinkChecker/Init.php". This is the one the cronjob needs to run. If you are unsure what the correct path is you can ask your hosting provider or login into the shell and navigate to the "ProcessLinkChecker" folder and type "pwd". That will give you the current path. It will be something like: /srv/username/apps/appname/public/site/modules/ProcessLinkChecker/ Combine the path with your new knowlegde from the tutorial and you can set it up. p.s. If you are on Windows you need to create a "Task" in "Windows Task Scheduler". p.s. 2 You don't have to wait to test if the link is working since you can test the script by running: /usr/bin/php /path/to/site/modules/ProcessLinkChecker/Init.php >/dev/null 2>&1 p.s. 3 this whole timing stuff can be pretty confusing so use a tool like crontab.guru. p.s. 4 after proofreading this post now it seems pretty hard , but believe me after a few times you can set it up in a few minutes.
    1 point
  10. Thank you Ryan - this is going to be amazing!
    1 point
  11. 1 point
  12. @adrian I sent you a PM with some additional details about these new panels.
    1 point
  13. Ok, made some progress: MailPanel.inc: foreach'es in formatEmailAddress and formatAttachments methods suppose that arguments passed are array but that's not always the case so the Mail panel shows an error. Converting them always to arrays solves this: if(!is_array($addresses)) { $addresses = array($addresses); } Intercepting Pages::save work in non-ajax mode, however, there's a blank screen after submission, is that normal? Edit: removing Pages::save makes the Mail panel disfunctional. I guess the info is lost in redirect then because when intercepting the redirect doesn't happen.
    1 point
  14. Thanks. I think there should be something extra to be added to the Ajax request to be catched by Tracy. What if someone tries to intercept WieMail::send? Wouldn't it replace the Mail panel's functionality?
    1 point
  15. Looks nice, thanks! I have a problem here, no emails are catched. I use WireMail and while there is no emails sent, the panel is not showing anything. I have an unusual setup for forms, using my own module and Nette Forms, plus using vanilla JavaScript instead jQuery. However, I can switch on/off ajax submit, but in neither modes show anything in the panel. I don't even get the second ajax bar below the default. Detecting ajax was an issue before ($config->ajax didn't work), but setting 'X-Requested-With' in JS solved this. In no-ajax mode there is a redirect going on, maybe that's why there's no catch? When I disable the Mail panel emails are sent right. I also removed all other panels just to make sure. I guess I'll need to let you my PW install to check things, let me know if you need this. As for the Interceptor do I need to trigger Pages::save manually just to make it work? In my module I don't have such hook by default.
    1 point
  16. At the end of the day they decided to stick with WordPress already told them i won't manage the WP if that's their decision
    1 point
×
×
  • Create New...