Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 05/20/2018 in all areas

  1. Thanks horst. I did some searching and thought it might be useful to compile a list of the issues, which are mostly (or perhaps all) resolved now. Solved: The issue mentioned above where some images were lost when multiple large images were uploaded simultaneously. https://github.com/ryancramerdesign/ProcessWire/issues/1871 https://processwire.com/talk/topic/13522-problem-with-ajax-images-upload-and-sessionhandlerdb/ Solved: Session times recorded incorrectly when MySQL timezone does not match local time. https://github.com/ryancramerdesign/ProcessWire/issues/1838 https://processwire.com/talk/topic/13307-session-handler-database-times-out-by-two-hours/ Solved: Truncated session data when Tracy Debugger installed. https://processwire.com/talk/topic/15784-what-will-trigger-a-csrf-error/ Solvable: Old sessions not deleted on some Ubuntu servers. I have struck this one myself and @horst's suggestion in the post below solved it. https://processwire.com/talk/topic/5796-session-handler-database-do-not-delete-old-sessions/?do=findComment&comment=56596 Fatal error thrown on Windows server using IPv6. https://github.com/ryancramerdesign/ProcessWire/issues/1596 https://processwire.com/talk/topic/12935-issues-moving-from-iis-localhost-machine-into-windows-server-production/ Slow performance with large number of sessions. https://processwire.com/talk/topic/18718-session-handler-db-issue/ But with huge amounts of traffic performance may be affected without SessionHandlerDB installed too. Login problems after website migration. Might be solvable by clearing caches. https://processwire.com/talk/topic/5317-cant-log-in-this-request-was-aborted-because-it-appears-to-be-forged/?do=findComment&comment=142160 https://processwire.com/talk/topic/13781-problems-after-installing-remote-copy-to-local/
    3 points
  2. Hi, After this did not help, I noticed that the 404 page was missing. It seems that my client simply renamed it and filled it with content. ? That was obviously the problem. sorry and thanks for your quick help!
    1 point
  3. Hi Manuel, Are you having this issue only with this page ? What about the other pages, does the delete tab show up normally there ? If you create another test page, does the delete tab show up then normally ? I have never seen a setting to hide a tab for a user group, you would need a module for this. https://processwire.com/talk/topic/4680-block-access-to-settings-delete-and-view-tabs-for-page/ For the moment you can use this simple api delete code to remove that contact page and then after recreate that page and see if the delete tab is there again: $thispage = $pages->get('/contact/');  $pages->delete($thispage); // or $pages->trash($thispage);
    1 point
  4. 2018 update: You can also use strtotime in selectors since a while (don't know in wich PW version, but it works in versions > 3. So you could do: $pages->find('template=invoice,created>"first day of this month",created<"last day of this month"'))
    1 point
  5. This week we've got some really nice upgrades to three core modules: SessionHandlerDB, ProcessForgotPassword and FieldtypeComments. This post covers all the details: https://processwire.com/blog/posts/pw-3.0.103/
    1 point
  6. Great, that will be really useful on sites with premium (paid) memberships where you want to prevent multiple users being sneaky and sharing a single account. Thanks @kixe and Ryan. I've avoided SessionHandlerDB apart from when I really need it because I've heard of strange issues that have eventually been traced back to this module. Unfortunately I can't remember what those issues were. For regular users of SessionHandlerDB: are there any issues or incompatibilities with other modules to be aware of? Nice! I only wish the announcement had come a couple of weeks earlier. ? I spent some time recently modifying ProcessForgotPassword for just this purpose. Excellent, I have closed an old request relating to this.
    1 point
  7. In addition to this, I can also recommend @flydev's Duplicator module: https://modules.processwire.com/modules/duplicator/ it is not just for cloning a site but for creating full backups (files + database). For example, before performing actions to the site you are not really comfortable with or you just want to make sure you have a current backup then Duplicator can be very useful.
    1 point
  8. 1. Use the right sanitizer $email = $sanitizer->email($email); $pagename = $sanitizer->pageName($pagename); // OR $pagename = $sanitizer->pageNameUTF8($pagename); 2. Set adjustName to true in the save options array to make your page name unique $np = new Page() // ... $np->save(array('adjustName' => true));
    1 point
  9. Here is a really nice example of a simple plugin. You can develop custom plugins and just place them in /site/assets/RockGrid/plugins or we can share them in the community. Look at that lovely UI for the user and how quickly he can get the information he wants in a very attractive way: Doubleclick = filter this row with the selected value Tripleclick = reset filter for this row (but leave all other columns untouched) document.addEventListener('RockGridItemLoadPlugins', function(e) { RockGrid.getGrid(e.target).registerPlugin(function() { this.name = 'doubleClickFilter'; this.onLoad = function() { var grid = this.grid; var clicks = 0; var timer, timeout = 350; // time between each click var doubleClick = function(e) { var colId = e.column.colId; var filter = grid.api().getFilterInstance(colId); filter.setModel({ type: 'equals', filter: e.value, }); grid.api().onFilterChanged(); grid.api().deselectAll(); } var tripleClick = function(e) { var colId = e.column.colId; var filter = grid.api().getFilterInstance(colId); filter.setModel({}); grid.api().onFilterChanged(); grid.api().deselectAll(); } // click timer grid.api().addEventListener('cellClicked', function(e) { clearTimeout(timer); clicks++; var evt = e; timer = setTimeout(function() { if(clicks==2) doubleClick(evt); if(clicks==3) tripleClick(evt); clicks = 0; }, timeout); }); } }); }); Not that complicated, right? But huge result ? PS: Do you see the click on the reload button? Loading > 900 rows of data with RockFinder in a breeze ?
    1 point
  10. Hello @Sanyaissues , I was not aware of the reCAPTCHA v3 but it will be definitely implemented. I will wait a bit more documentation as I already tried to get it working but without success. Thanks for your interest ?
    1 point
  11. Not sure about this on such large numbers. 10k pages per se should be easy. But with hundreds of users..?! Would need a test-run for sure. Maybe caching would be necessary or at least helpful. Are you interested in a closed beta test run? -> pm
    1 point
  12. I'm missing a question: 4. If you are using Google Webfonts, do you use the preferred method by google (loading from Google servers) or hosting them locally? and probably: 5. When using local copies of Google Fonts, do you observe the font list for availability and if the local files are still up-to-date? (used monospaced Droid font in the past which is no longer available for free) Until last weeks I've used to use the recommended method and let Google serve client-optimized css declarations, but with upcoming GDPR I've changed my mind and reworked all my sites to host the required fonts locally. Of course I've started using the already mentioned webfont-helper but ended with an own PW module which takes the Google font string (like 'Didact+Gothic:regular|Syncopate:regular|Playfair+Display:italic'), downloads all required variants and creates the required CSS which makes transition rather smooth (if anyone volunteers to make a well documented PW module out of it, please send me a PM). That way I (or my customers) may continue manage required fonts from the Admin. And, to at least answer one of the original questions: Since my projects are rather simple with mostly a single CSS file (may be built from LESS) which is included within the <head>, so it was rather simple to use relative paths for now. For more complex sites I'd probably use absolute paths as well.
    1 point
  13. Hello, I know this is not a course but a series of userful books https://goalkicker.com/ These are some that could become handy with ProcessWire https://goalkicker.com/PHPBook/ https://goalkicker.com/SQLBook https://goalkicker.com/MySQLBook https://goalkicker.com/GitBook https://goalkicker.com/JavaScriptBook https://goalkicker.com/jQueryBook https://goalkicker.com/HTML5Book https://goalkicker.com/CSSBook
    1 point
  14. Definitely. Thank for pointing that out, I have ammended my post.
    1 point
  15. Thanks @BitPoet! I think there might be some typos in the mutator example - maybe you meant: $blogposts = $pages->find("template=blog-post, sort=created"); $grouped = $blogposts->groupBy(function($pg) { return array(strftime('%Y', $pg->created), strftime('%m', $pg->created)); });
    1 point
×
×
  • Create New...