Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 10/14/2016 in all areas

  1. In addition to our regular core updates, we also have a new ProFields module to introduce to you this week. It’s something a little different that we’ve found pretty useful and think some of you will too. It's also available for download now in the ProFields board. This blog post covers it in detail: https://processwire.com/blog/posts/text-blocks/
    7 points
  2. Hey everyone, Max from Snipcart here! We just published a full tutorial showing how to use ProcessWire + Snipcart (our dev-first HTML/JS shopping cart platform) to enable e-commerce. It was pretty much my first time playing around with the Apache/MySQL/PHP stack, so I'd love to get some feedback on the demo code. Oh, and also, if you feel like the Snipcart integration could have been done in a different/better way with ProcessWire, let me know! > Blog post tutorial > (Very) simple live demo > GitHub repo Cheers folks.
    6 points
  3. If you go with a template for the major CMS you are pretty well stuck with slight modifications to your template. (if you start making major modifications you start to deal with update issues) If you want a website designed the way you want it you use Processwire as the design is separated from your CMS. We want a design first and then put in the CMS after we like the design. Opencart is my go to choice for eCommerce as I'm a PHP programmer and I can do anything I like with it given enough time and money. But it's an eCommerce package not heavy on the design and I find it a hassle to get it to give that flashy design - that costs time and that costs money. Plus a lot of template designers I have bought from don't update their designs regularily and Opencart has changed a lot between 1.6 and 2 and again between 2.0 and 2.2 so I'm a bit tired of changing templates with every major upgrade. For the price I'd rather keep Opencart for the eCommerce and get a designer to build me a nice flashy front end that I can then fill in with Processwire templates. I've yet to hit any major upgrade changes in Processwire that breaks the site I've had designed for it - not the case with most of my client's websites that have been designed to run on Wordpress, Joomla and Opencart. My clients seem to like personalised websites that stray from templates! I specifically don't want to reinvent the wheel of Opencart - I just want a flashier designed wheel for the front end of my client's site.
    5 points
  4. I've added a new "Wipe" extra action that deletes the page (bypassing the Trash). I'm not sure about the name "Wipe" so I'm open to other ideas too. Currently it's restricted only to pages without children to avoid data loss at mass levels (and of course it will be for superusers only)
    5 points
  5. Hi everyone, I have just updated this module to support insertion of Hanna codes, and renamed it to DynamicDescriptionNotes. It passes the $page (for the current page being edited) and $field (for the $field where the Description or Notes text is referencing the Hanna code, so you can use $page and $hanna->field in your Hanna code to refer to these. This opens up lots of possibilities for dynamic content. Please let me know if you have any problems or suggestions. A big thank to @Robin S for the awesome idea! PS, It's now available from the modules directory: http://modules.processwire.com/modules/dynamic-description-notes/
    4 points
  6. FYI, I have posted a github request about this name of the Delete tab in the hopes that we can get a little better consistency: https://github.com/processwire/processwire-requests/issues/36
    3 points
  7. Here is the current state - I've used "Delete" as it's the official term though I know it can be misleading. Anyway, renaming the button is not a big deal from the code POV. I think the words Delete - Cancel are equally long in English so it couldn'be a problem in most cases (in other languages if the Delete is too narrow and one clicks on the right side of it, the Are you sure btn may be under his mouse).
    3 points
  8. This trash vs delete conversation makes me think that the Delete tab on the edit page interface should actually be called Trash. The page list action button is Trash, but the Delete tab does the same thing so they should be named for consistency.
    3 points
  9. Ok, I have committed the new version. A huge thanks to @horst for contributing this functionality. Here are the key new sections to the module config: @Christophe - just pinging you to make sure you see this new functionality.
    3 points
  10. @Christophe, once I have hacked a module (in an early version) of adrian to add exactly what you are looking for. GET http://fua.pw.nogajski.de/ [HTTP/1.1 503 Service Temporarily Unavailable 187ms] Date: Thu, 13 Oct 2016 20:14:54 GMT Retry-After: Sat, 22 Oct 2016 11:22:00 GMT So, if you like, I can upload it here as is, in a zip. Maybe, @adrian gets inspired and can add this into the current dev of his module as a maintenance feature, additonally to the site protect feature!? very old, hacked version of protect with maintenance.zip
    3 points
  11. Forgot to mention: unless I hear otherwise from ESRCH (I've messaged) I plan on pushing this to the module repository as it's so useful, it needs to be in there from someone. Anyone.
    3 points
  12. v079 is uploaded with the abovementioned Delete feature so you can try it. Tip: uncomment line 661 to disable physical deletion (for testing purposes).
    2 points
  13. The ImportPagesCSV module does not include a permission in the getModuleInfo() method, so you would need to edit the module file to add one. Bear in mind that this would be overwritten if you later update the module. public static function getModuleInfo() { return array( 'title' => 'Import Pages from CSV', 'version' => 106, 'summary' => 'Import CSV files to create ProcessWire pages.', 'singular' => true, 'autoload' => false, 'permission' => 'import-csv', ); } Refresh the module cache, create custom permission 'import-csv' and give that permission to any role that is allowed to use the module.
    2 points
  14. @tpr Could you make it so the confirm link does not appear in the same location as the initiating link - I'm just worried about some users I know who click twice in the same place; they'll end up inadvertently wiping pages if the confirmation link isn't offset from their last click position. There's a demo Pen here, (it was based on one of LostKobrakai's pens - can't find the link now) that shows what I mean.
    2 points
  15. There could be something in today's coffee Edit field in new tab on middle-click (without template context):
    2 points
  16. Many thanks @adrian, now I'm back again in regular update process with the module. Yep! --------------------- I think only search bots will act according to retry-after. I have read on Googles advices on how they like to see handled maintenance mode for already indexed sites. And it was a 503 with a "retry-after" . If the estimated timestamp is passed, I added 60 minutes to the current time and sends this. Maybe, you can add this to the explanation, that one can check "send retry-after" but without a fixed timestamp too? This way we have enough possibilities, I think.
    2 points
  17. On a site that is always protected, it simply doesn't matter. But on a site, where I regularly only use some single protected pages but a big part is publicly accessible, there it is better to use SEO friendly headers when closing the whole site. It is important for sites that are already indexed, and temporarily are not accessible. That's why you thought it belongs to Petes module. But when I already have installed ProtectMode and it can close down the whole site, I have maintenance mode already, or not? Maybe best solution would be to offer both methods for the root page? Radio or something else for: protect | maintenance, plus a datetime via showIf for maintenance?
    2 points
  18. Hey @horst - I am happy to add that functionality to this module, but I guess I thought it belong more in Pete's module, but if you guys would rather see it here, that's fine with me. Do you feel like sending me a PR? Otherwise if you post the zip, I can grab the relevant bits and incorporate.
    2 points
  19. AFAIK it's a CSS issue, the LightWire theme hides the original icons and replaces them with its own icons, but unfortunately it hasn't got icons for third party plugins. To display them, use !important for the icons, at least that's why I've done in AdminOnSteroids module.
    2 points
  20. Or, even better since it avoids a roundtrip through the database, would be Pages::cloneReady, which is called after the page is copied in memory and before it is saved to the database. Usage is the same, sans the call to $newpage->save(). I'm using Pages::cloned in my module because I need the ID of the new page which is only available after it has been saved.
    2 points
  21. Another possibility for CSV importing by editors is the Batch Child Editor module: http://modules.processwire.com/modules/batch-child-editor/
    1 point
  22. Sorry @ukyo - I can't reproduce here. Could you please try dumping $pagefile, $suffix, and $pagefile->getCrop($suffix) just before line 139 to see what we are dealing with. Thanks!
    1 point
  23. 1 point
  24. thanks @ethfun for the report, i will update the core SimpleMDE stuff to latest. In terms of the init for closed and tabs, i will check it out and post back here.
    1 point
  25. What I usually do is layering two image divs on top of each other. One dummy image (low weight / one color ) in a div and on top of that an absolute div with the actual image as a background. This is a way of ensuring that the ratio stays the same, with almost no effort... ps: and it works well with the responsive block grid of Zurb Foundation (what I use instead of Bootstrap) -> http://foundation.zurb.com/sites/docs/grid.html#block-grids <div class="rasterblock"> <div><img src="dummy-image.jpg"></div> <div class="rasterinnerblock"> <div class="rasterimageblock" style="background-image:url(actual-image.jpg)"></div> </div> </div> <style> .rasterblock{position:relative;} .rasterinnerblock{ position:absolute; top:0px; left:0px; width:100%; height:100%; } .rasterimageblock{ width:100%; height:100%; overflow:hidden; background-position:center center; background-repeat:no-repeat; background-size:cover; } </style> Example: http://knokkehomes.be/verkoop/1/verkoop-vastgoed-te-koop-immo-knokke-homes.html
    1 point
  26. @tpr Appending the confirm sounds like it could work - just need to get it out from under the mouse pointer to stop inadvertent second clicks. If you can replace the initiating link with a cancel button that would be even better as an inadvertent second click would leave things nice and safe. @adrian Batch Child Editor would need it's own terminology brought into line with that.
    1 point
  27. Wow, like a think tank in here right now What about also having the trash colour set to orange and the permadel as red?
    1 point
  28. So Delete Permanently? May I abbreviate to PermaDel or DP? @grimezy yep, these are beauties of web design / front-end that made me look into the backend instead
    1 point
  29. it depends - a lot of times if you are talking about a logo, that is a really specific image that might be precisely sized and optimized for display, may have light/dark versions, smaller icon version for mobile, maybe a version with a tagline, as well as possibly retina versions; it could be something you don't want the client to have access to change. On the other hand if you did want the client to have access to it and be able to change it, you might need a multi-image field with tags, so that you could upload all of the versions of the logo and tag them (light, dark, retina, icon or whatever). This is why i would recommend using the system's native image fields for images...
    1 point
  30. Try with different browser(s). See https://github.com/ryancramerdesign/ProcessWire/issues/1487
    1 point
  31. Here is the above code (with @BitPoet's correction) in action:
    1 point
  32. Thanks a lot, @adrian and @horst. You guys are awesome. As is this community.
    1 point
  33. I guess what you are saying here is if you set the "Estimated End of Maintenance" to a very short time from now, then the Retry-After timestamp will be changing constantly as soon as that initial timestamp point is reached. Is that what you mean but "without a fixed timestamp"? I see that the Retry-After actually allows specifying a timestamp or a delay in seconds, but a constantly changing timestamp would essentially be the same as the "seconds delayed" approach?
    1 point
  34. Yeah, that's essentially what I have done. Any thoughts/experience with this: http://www.nurkiewicz.com/2015/02/retry-after-http-header-in-practice.html What clients do you think they are referring to? I would have thought that search bots might be triggered by this, but doubt they would all hit it immediately at the Retry-After time. As for manual users - that is unlikely also. I guess I could randomize the Retry-After time somewhat - maybe at 1 minute intervals for up to 10 minutes after the entered time, but it sounds like overkill for almost all sites. I'll ignore unless you have any strong thoughts on it.
    1 point
  35. I think, sending a 503 and "retry after" should be done everytime if the whole site is closed / protected, regardless if you call it protect mode or maintenance mode. This is important for SEO. I think both of the modules, yours and Petes, should do that by default, when the whole site is not accessible for SearchEngines. (just my 2cents)
    1 point
  36. i would think that a general site settings module should just store settings, and not any files or images - if you need those just add a custom field to your settings template (?) alternately ftp upload the image to a specific folder and then reference that file's path in the setting...
    1 point
  37. @easynowbabyIt might be advantageous for you to post about this in the padloper support forum as Antti is more likely to see it and fix it if it's in there.
    1 point
  38. Thanks! I've added patches here and there when I found something odd or when you guys here reported something. There will be always issues with this module as it's basically a collection of many small modules covering many areas, leaving room for potentional bugs. Anyway, I feel a bit lost without AOS in the PW admin - of course the module is mostly designed to fit my needs
    1 point
  39. @tpr I tried this module out when it was a very little baby and ended up removing it as there were too many layout quirks when used with the Reno theme (which I use by default.) I re-installed it yesterday to find that it's grown up very nicely! It's now in three installs and probably heading for more. Thank you for this module! I'm also about to try out your MarkupSrcset module - but that's off topic here.
    1 point
  40. And this too http://processwire.com/api/ref/
    1 point
  41. Ok, thanks, I was remembering this thing wrong. In the announcement blog post reads that So it works only after opening the image edit panel. https://processwire.com/blog/posts/major-images-field-upgrade/
    1 point
  42. good to know about versioning thank you! and the expiration I'll check a little later thanks for spotting this..
    1 point
  43. What you need is a complete copy of your production site. That includes all files from wire and all files from site, plus index.php and .htaccess. Additonal to this you need a dev-mysql DB that is an exact copy of that DB of your production site. ATTENTION: the site/config.php file of your dev-copy need to be adjusted to point to the dev-DB, and not to the production DB anymore! The dev-copy should be on its own domain or subdomain. How can you call / access your dev-copy via HTTP? It better should not exist in a subfolder of your production webroot. If your production site is http://example.com/, the devcopy should NOT be accessible via http://example.com/devcopy/, but can be a subdomain like http://dev.example.com/
    1 point
  44. I've created a git repository for this useful little module here. Fully attributed (in the module) to ESRCH.
    1 point
  45. As a side note: you have the install (sub)folder in your production site? (this should be deleted on production sites after successful installation) There are not much third party modules. Following these steps should do it, hopefully: start your local copy and check if everything is working as expected, front and backend make a mysql dump of the local DB download the PW 2.7 legacy version rename your existing wire folder to wire.2-3, your index.php to index.php.2-3 and the .htaccess to .htaccess.2-3 copy the wire folder, the index.php and the .htaccess (htaccess.txt => .htaccess) from the PW 2.7 distribution to your local copy now load / reload a multiple times the backend and look out for messages. (turn on $config->debug = true; in your site/config.php) If this above steps will do, you additionally will need to change every html-editor textarea field type to work with CK-Editor, instead of the old, (now in the core missing TinyMCE). I don't recall any other things should take care of. The site/templates-admin/ folder can be deleted in your site profile too, after the successful upgrade to 2.7. If there will raise any other issue, please come back here and tell us.
    1 point
  46. The server software looks good. I would select PHP 5.4.x or higher. Upgrading to PHP 2.7, the legacy Version at a first step should be relatively safe, depending on the third party modules you run into that site. Can you post a list of all installed and used site/modules ? Regardless of that, you first should backup a mysql dump and the complete site folder! If you can, you than should install (locally?) a copy of that site and test the upgrade there. If not, it is also possible to do it on the live site, if you: can set it into maintenance mode some how have an external access to the mysql DB for backup and restore operations
    1 point
  47. @szabesz - I had a play around to see how you could use custom PHP replacements in the description field. My first thought was create a module where you define tag/code pairs in the module config, then look for and replace those in descriptions. This works, but requires the use of eval() and conventional wisdom is that eval() is evil. So my next thought was Hanna Code, and this seems to work great. In ready.php (or create an autoload module): $this->addHookBefore('Inputfield::render', function($event) { if(!$this->wire('modules')->isInstalled('TextformatterHannaCode')) return; if(!($this->wire('process') && $this->wire('process')->className() == 'ProcessPageEdit')) return; $inputfield = $event->object; $description = $inputfield->description; if($description == '') return; $this->wire('modules')->TextformatterHannaCode->formatValue(new Page(), new Field(), $description); $inputfield->description = $description; }); Then set up the Hanna codes you want to use in description fields. If you want to get the page object for the page being edited then add this at the top of your Hanna code... if($process && $process->className() == 'ProcessPageEdit') { $p = $process->getPage(); } else { return "[Hanna code '$hanna->name' is not valid for this field]"; } return $p->url; // an example to return the URL to the page without scheme and hostname ...then access the page object as $p
    1 point
  48. Status update: JsonNativeField version 0.0.4 now has configuration options for all field types in the field's input settings. Coming up next is some more data validation (i.e. "don't shoot your foot" checking) both in the UI when switching input type and in the module code when saving to and loading from the db. This will be the major step towards moving the module from alpha to beta stage.
    1 point
  49. You could use that image as a background, something like this: .img-responsive { background: url(yourUrl); background-size: cover; background-repeat: no-repeat; background-attachment: fixed; background-position: center; } Or serve a different image using srcset: <picture> <source media="(max-width: 20em)" srcset="images/small/space-needle.jpg 1x, images/small/space-needle-2x.jpg 2x, images/small/space-needle-hd.jpg 3x"> <source media="(max-width: 40em)" srcset="images/medium/space-needle.jpg 1x, images/medium/space-needle-2x.jpg 2x, images/medium/space-needle-hd.jpg 3x"> <img src="space-needle.jpg" alt="Space Needle"> // Fallback </picture> More on this here
    1 point
  50. Hi Stan I just soft launched 3.0 support. There have been some nice additions to order management, but feature wise I am pretty happy where Padloper is currently. I will focus on improving code and documentation. I am avoiding "feature bloat", since I think 99% of webshops build are very simple with few unique aspects. Padloper tries to cover 0% of these unique things out of the box, but making it easy and possible to hook into. So things like discounts, public markup generation etc will never make it into Padloper core. What features you are missing?
    1 point
×
×
  • Create New...