Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 08/10/2019 in all areas

  1. Just a quick update this week. I’ve got a good post in the works that I thought I’d have ready for today, but didn’t have quite enough time to finish it, so going to save it for next week. Though there's a module that's part of the post, and since it is ready, I've posted it below. We’ll look at ProcessWire 3.0.138 next week as well. I do have a couple of non-core updates to mention this week though. First is that I’ve released a new Textformatter module that converts any image references in your CKEditor/textarea fields to WEBP images on-the-fly as pages are rendered. If you are implementing WEBP on your site, you’ll find that the images placed in rich text fields are the most tricky ones to serve as WEBP, so this module takes care of that task for you. It's in the modules directory or at GitHub: https://github.com/ryancramerdesign/TextformatterWebpImages I’ve also released new development versions of the ListerPro and Export CSV modules, both of which are available to subscribers in the ListerPro support board. Some of the new features are actually built into the core, but currently only utilized by ListerPro. There’s quite a bit of new stuff, so there’s also an ~18 minute screencast that walks you through them, which can also be found in the ListerPro board.
    8 points
  2. Hi Guys, I honestly did not expect so many of you to jump in and try to help so fast. In the future if I need help I will try to explain the use case a bit as @bernhard suggested. But just like everything else with Processwire, the solution was way simpler than I even hoped it to be. A big Thank You you @teppo, you did understand me, cause your suggestions were exactly what I needed and solved my problem. Just in case the use case is still relevant: The normal roles systems of PW has always worked well for me as it is, and in some sensitive data systems, i have come to rely heavy on PW permissions in systems where I was the only one who needed to add fields and templates and everyone else was only for data viewing, entry and editing. However I have one case now where I want them to be able to build their own PW form in the backend to register incoming data, because then I get to do only the fun part: 1: spinning up VMS, Virtual hosts and clean PW installs and then 2: writing the scripts for reports and graphs from that data. Basically with this now in my systems, I can use PW the way I used MS Access back in the days. I train the datacollectors to build their own datacollection tools, and I focus on reporting, without the risk that a malevolent other super user can remove me or uninstall the Versioning Module.
    3 points
  3. Hello folks! Recently we published a new website for Brightline, a Project Management Institute (PMI) initiative together with leading global organizations dedicated to helping executives bridge the expensive and unproductive gap between strategy design and delivery. The previous website was made in Hugo as in the beginning it was a very simple website, but as the business needs changed, I decided to build this version in ProcessWire. Nothing fancy occurs behind the curtains, the need was more on getting some data in a way that makes it easier to create reports and to give access to PW's great admin to another team member. For the other website, that you can see here, I didn't implement a CMS on top of Hugo because for me it was quicker to edit the files and push to the repository. Some content is still being copied but 98% is done. A quick list of modules used: - ProCache, FormBuilder, ProFields, SeoMaestro, PageHits, TracyDebugger, MenuBuilder, AutoSmush, and other custom ones. I'm biased, but there a lot of good and useful content created by us and also by partners and all is free to download. :)
    2 points
  4. Hi @kixe, additionally to what @jploch said above, and when you are already at it ;-), it would be very helpful to have the option for auto-backup on login! The real life usage of auto backup on logout is not consistent because some users simply leave the backend without logout process. So I would prefer to switch to auto backup on login process. :-) (Login process can not be skipped like Logout process!)
    2 points
  5. Please don't use this module any more. I think in the end it just adds more complexity (and dependencies) than benefits. See this tutorial how simple it is to create a custom runtime-only Inputfield: WHY? I've started building this module because the existing solutions by @kongondo and @kixe (https://modules.processwire.com/modules/fieldtype-runtime-markup/ and https://github.com/kixe/FieldtypeMarkup) did not exactly fit my needs. Actually this module is aimed to be a base module that can easily be extended by other modules. It takes care of the heavy lifting that has to be done when working with custom fieldtypes in ProcessWire (injecting scripts and styles, handling JS events, doing translations). See RockTabulator as an example. I'm quite sure more will follow (eg ChartJS)... WHAT? This module helps you injecting ANY php/html/js/css into any PW backend form (either on a page or in custom process modules). It also comes with a sandbox process module that helps you setup your fields and provides handy shortcuts that integrate with TracyDebugger and your IDE: WHERE ...to get it? At the moment the module is released as early alpha and available only on github: https://github.com/BernhardBaumrock/RockMarkup2 If you have any questions or ideas please let me know ? PS: This module shows how easy it is to extend this module for your very own needs. All you need to do is providing the module's info arrays and then overwrite any methods that you have to modify (eg the InputField's render() method): https://github.com/BernhardBaumrock/RockMarkupExtensionExample
    1 point
  6. Hi Pete, I'm not sure if this is of any help with editing user, as it all belongs to page edit buildform. But maybe you just have to look for ProcessUser instead of ProcessPageEdit like in this related snippet: protected function afterBuildForm(HookEvent $event) { // Only for ProcessPageEdit (not ProcessUser) if($this->process != 'ProcessPageEdit') return; Here are some links to posts with tips and other links on this topic for pages: https://processwire.com/talk/topic/17444-modifying-tabs-moving-fields-to-another-tab-in-page-editor/?do=findComment&comment=153312 https://processwire.com/talk/topic/19537-pageeditor-children-tab-possible-to-load-children-directly-on-open/?do=findComment&comment=169412 https://processwire.com/talk/topic/14887-hook-to-hide-inputfield-in-admin/?do=findComment&comment=133586 Regarding this useful information, you cannot completly remove the name filed, but hide it:
    1 point
  7. I mean this: note the "active" checkboxes. OK, now I know a bit better what you mean. These pages are not created "manually" in the admin, but from a page-reference field that has the option "allow to create new pages?" in the field settings. If that is indeed the case, I wouldn't know what the expected / default behavior would be. Only create the page in the default language? (which seems to be the case). I don't know if that is configurable. I don't have time right now to investigate - maybe you'd have to use a hook to automatically activate all languages when creating a new page like that.
    1 point
  8. Just noticed something in the new php.ini that is shipped with php7.3 ; The value is also used for json_encode when encoding double values. ; If -1 is used, then dtoa mode 0 is used which automatically select the best ; precision. serialize_precision = -1 The php.ini with php7.0 had the precision set to 17. Not sure what real world impact this will have though.
    1 point
  9. Do you have an ___executeRefresh() method? There's plenty of infos in this old thread:
    1 point
  10. So it sounded great. ? Yes... indeed.
    1 point
  11. Yeah - I've too often had to build complicated RockFinder queries and came up with this quick&easy solution one day and couldn't believe I didn't think of it earlier ? Don't tell anybody, but I've just started developing RockFinder2 with a new syntax that will be even easier to use and more intuitive and powerful ?
    1 point
  12. Check this out people, Kirby also just launched their new editor in a similar fashion: https://github.com/getkirby/editor
    1 point
  13. Hey Kixe! Thank you for this great module! I use it quite often. For most projects I need the backup to get triggered when the client logout. I don't want to give the client the backup permission, to prevent them to mess things up. From your comment above it seems the permission is not needed. But when I logout without the backup permission, the backup is not working. It would be nice if the backup gets triggered by any user on logout, or at least an option for this.
    1 point
  14. Hi Teppo! Great job! I added some improvements to my theme and a little responsive part too. Maybe you would like to add the new css to the module. The new responsive view (max-width: 650px): theme.css
    1 point
  15. super user.s required to create fielders y templatos purposefulness of super user this.is with out such purpose is not.super
    1 point
  16. AdminBar 2.0.1 released: Plenty of updates behind the scenes. So far "end user" functionality remains largely the same, though. New options for hooking – decent support for modifying generated output and adding all-new links and other features programmatically. Extended theming support: the module now comes with three built-in themes ("original", "tires" per the theme submitted earlier by @tires, and "uikit"). Uikit is an adapted version of the top bar in admin, and it's now the default theme for the module. Each theme may include its own settings (Uikit, for an example, allows displaying/hiding some or all of its icons and the ProcessWire mark). Custom theme support is still there, but requires a few modifications: custom theme needs to be selected via module config screen, you need to provide a directory where theme files live, and this directory has to contain (at least) a theme.css file (but optionally also theme.js for custom JS, theme.php for hooks, and config.php for custom module config settings). Oh, and the module is installable via Composer now – just run "composer require teppokoivula/admin-bar" in your sites root directory, or the /site/ directory. New requirements for 2.0.1 are ProcessWire >= 3.0.112 and PHP >= 7.1.0. For earlier version of ProcessWire or PHP, use release 1.1.5 (this version won't be updated anymore, but should work in ancient version of PW and PHP). Below is a screenshot of the "Uikit" theme in action on the Wireframe website. In this case I've disabled the icons from the left side of the Admin Bar – by default each action there would have its own icon as well.
    1 point
  17. Get https://gparted.org/livecd.php Get Macrium Reflect Free and make sure you have the exe and store that on a USB stick etc. Now there is 2 ways to go about it. a) Have OS and your data on the same drive in different partitions or b) have separate drives for OS and data. Having OS and data mixed is a bad idea. Especially with Windows. Been there, done that, don't do it. Similar to web dev where you can have a decoupled frontend from a backend and hence let the client decide some time down the project to take a new frontend while the backend can be left intact. https://www.coredna.com/blogs/headless-vs-decoupled-cms If you opt to have 1 physical drive and have OS and data on there put in into your laptop/desktop and boot into Gparted. It will work regardless of your chip/architecture. Make two empty partitions, one for your OS and one for your data. You should have C for the OS and D for your data. For Windows to be able to be installed you will need a NTFS partition. Going into details here is too much but generally what I do is format it to "cleared" first and set the flag to boot. If I remember correctly then you can boot into Windows setup and it will recognize the partition as empty and install onto it. Let Windows do the install, follow instructions and do not connect to the internet, turn WiFi and Ethernet off, also physically, pull all internet cables out of the box. Once done with the install, do not touch anything. Put the USB stick with Macrium Free in it and install it. Then make a first clean image. Store that image on the D partition. Then go on to install drivers. Each time after a driver is installed correctly make a new clean image. Might take some time but will come in very handy later. Once done with all the drivers get rid of the images that you made after each drive installation and only keep the image that you made right after Windows was installed and the latest one, right after the last driver was installed. You should now have 2 images, one default untouched Windows image and the 2nd one with all the drivers installed. Also, best to get the drivers BEFORE you go online, so from another machine and put those on the USB stick alongside Macrium Free. Now, slowly and carefully go on to install the software you want. After each install of a new app make a new OS image. In the comments for the image you can write what you installed. I go about it that I keep a list of what software is currently installed in that image in the comments. Or just make a text file where you write what image has what installed. Make sure to decouple your Documents/Pictures/Videos/Music/Downloads from the C (OS) partition and link those to folders on your D (data) partition. Done. Like this you should be fine going forward. Sure there are some settings and the registry being stored to C, for that you have the clean images. Now when you change things in Wamp/XAMPP/whatever, BEFORE making changes, just make a new OS image. Then do anything you like, play around, if it works out fine, if not, just slap the latest image back on, done. Nothing to worry about. Plus your work data should be fine since you have all that on the D (data) partition. The procedure is the same when you multiple drives. One drive for your OS and all other drives for your data. SSD drive for the OS should be good. These days all that hardware is so cheap, and believe me, with this setup you won't need a 1TB or 2TB OS drive. Keep the OS tight and fast with a 265GB SSD, keep the rest of your data on other drives or partitions. I think I said it enough times now. My current setup is that I have dual boot with Windows and Linux, though I must admit I almost never boot into Windows. Though I will have to use that since there is some proprietary software and hardware I use that needs Windows to work, it is for recording presentations and at the same time the speakers screen. Coming back to my setup, I use one drive for Windows and Linux and the 2nd drive for the work/data. The work data is formatted to NTFS so that both Windows and Linux can access, read and write to it with no permission issues, at least not that I know of so far. This is what it looks like in Gparted. Drive 1 for Windows and Linux. And drive 2 for the work/data. Regardless of the space you allocate, with something like this and if done properly, you can use your machine without having to worry about all the issues Windows comes with. As a bonus, set yourself up with proper firewall rules, get Panda cloud free as anti-virus, done. https://www.av-comparatives.org/comparison/ gives you a good overview of anti-virus ratings. Click on "Test Charts" so see the overview. Last not least, if you want to go for it, get a VPN for extra security and lots of benefits. https://www.privateinternetaccess.com/ has/is serving me pretty good. Though mind you, if you do things like broadcasting your app onto your mobile devices with Browsersync for example you might need to have the VPN turned off for that. Not sure, have not tested that. I can tell you, I have spent countless days/nights/weeks/months getting this stuff right. It is a tough journey and not easy to learn. Though at the end waits a machine that will just work and work for years, without any issues, so that you can get your work done and not loose time configuring or resetting. I have clients that had a hardware mess, applied this method to their hardware and it works to this day, happy campers, though I am not even support, haha. Oh, some might argue against this, but I never did any Windows updates, don't do them to this day, shut down and turned that service off right at the beginning. The Windows 10 and 7 latest images with SP updates take care of most of it and work out of the box. With a VPN, Panda cloud and not doing silly stuff you should be fine. Yes sure you need to properly config your firewall for that and also have things in your email client to protect you. For example if you want to be super careful get Sandboxie and isolate all internet facing apps, i.e. email client and browsers. Like this if someone send your a virus via email or you surf a site with some malware you have that stuff isolated and when you close the app the isloated bit on your hard drive will get wiped securely, done. Hope this helps. ?
    1 point
  18. Great! Oh no! That's because it is matching the > in the prefix value in the snippet. So, I should change this: "prefix": "pages->find(\"selector\")" to this: "prefix": "pagesfind(\"selector\")" Thanks for catching this, but hey, you shouldn't be typing HTML closing tags! ? VSC extensions should do that for you. See Auto Close Tag. It can do this: Have a look at Auto Rename Tag as well (it acts up sometimes though). Regarding ProcessWire variables, first check out intelephense (as per previous discussions earlier today). If it works for you, then no need for my snippets :-). I've gone back to my snippets atm since intelephense is not working for me ?
    1 point
  19. The idea is get something simple to setup and simple to use.. the Matrix usually is complex to setup and fine tuned, and sometimes complex to the user, mainly when have depth.. and near to impossible to reuse it in other projects.. ah! and is not cheap too.. I was thinking in something simple and useful for build basic landing pages, ..easy to copy to another projects.. sometimes when we have many pages with crazy designs that not fit the regular "basic-page" (main+sidebar) or similar, we start to fill the site folder with several templates files.. but it's only and idea to refresh.. for me make sense.. or perhaps having a Textarea that store unrestricted HTML and can be edited with something like this http://grapesjs.com/
    1 point
  20. $pages->find("parent.template=news-month-archive"); $page->rootParent->find("parent.template=news-month-archive");
    1 point
×
×
  • Create New...