Jump to content

Leaderboard

Popular Content

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

  1. 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/
    8 points
  2. Here's some news about Google going to change it's green padlock indicator for https connections. Around the month September Google is going to change it's https secure indicator. Instead of a green padlock for a secure https, in september it will phase out to a grey padlock and in october to no padlock at all. From then on Google will show a warning in red color: "Not secure" when entering data on a none https page. You can read more about it on google's Blog: https://blog.chromium.org/2018/05/evolving-chromes-security-indicators.html ----------------------------------------------------------------------------- keep coding and Happy week-end, ?
    4 points
  3. if anybody has ever wondered how secure uniqid is to use (from a security and an uniqueness point of view): https://www.sjoerdlangkemper.nl/2016/06/09/how-phps-uniqid-works/
    4 points
  4. 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 ?
    3 points
  5. Not a question, but just something I discovered that I wanted to share on the forum since I haven't seen it discussed anywhere. If you are familiar with the "autojoin" option on individual ProcessWire fields, enabling this feature means that every time a page with that field on it is loaded into memory, the field will be included with it immediately. (Normally just the page's name and meta data is included, and getting a specific field from the page requires a separate trip to the database. This is to conserve memory) Normally this is fine and it keeps things simple, but occasionally you may be loading a lot of data in a consistent fashion (for, example, to populate a table) and know exactly which fields you need. With the autojoin option on fields, you would have to enable autojoin for all pages at all times, which you probably don't want. With the following code, you can do a $pages->find() and specify exactly which fields you want to autojoin with it: $pages->find("template=whatever", ['loadOptions' => ['joinFields' => ['filed1','field2','field3']]] ); I tested out in debug mode on one of my projects, and it seemed to significantly reduce the number of SQL queries required for an html data table I was building. Hope that helps someone!
    2 points
  6. 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));
    2 points
  7. yep. And / or: open the site in incognito mode. Everytime you close the browser in incognito mode again, the cache gets cleared automatically.
    2 points
  8. Maybe you try to configure your webbrowser(-profile), that you use for webdeveloping, to completely disable caching?
    2 points
  9. This module tracks changes, additions, removals etc. of public (as in "not under admin") pages of your site. Like it's name says, it doesn't attempt to be a version control system or anything like that - just a log of what's happened. At the moment it's still a work in progress and will most likely be a victim of many ruthless this-won't-work-let's-try-that-instead cycles, but I believe I've nailed basic functionality well enough to post it here.. so, once again, I'll be happy to hear any comments you folks can provide https://modules.processwire.com/modules/process-changelog/ https://github.com/teppokoivula/ProcessChangelog How does it work? Exactly like it's (sort of) predecessor, Process Changelog actually consists of two modules: Process Changelog and Process Changelog Hooks. Hooks module exists only to serve main module by hooking into various functions within Pages class, collecting data of performed operations, refining it and keeping up a log of events in it's own custom database table (process_changelog.) Visible part is managed by Process Changelog, which provides users a (relatively) pretty view of the contents of said log table. How do you use it? When installed this module adds new page called Changelog under Admin > Setup which provides you with a table view of collected data and basic filtering tools See attached screenshots to get a general idea about what that page should look like after a while. For detailed installation instructions etc. see README.md.
    1 point
  10. Hi, this is a textformatter-module to globally set all kinds of YouTube and Vimeo options to embedded videos. It works well with TextformatterVideoEmbed and I think also with TextformatterOEmbed - https://github.com/blynx/TextformatterVideoEmbedOptions ... this is my first module - so I hope the code is acceptable ... ; ) What do you think about the way I implemented the configuration? I Seperated all the config and defaults into a JSON file and generated all fields automatically ... I was wondering if this was already possible or a good idea at all here: https://processwire.com/talk/topic/11155-create-inputfields-from-json-array/ Looking forward hearing your feedback! Cheers, Steffen
    1 point
  11. 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
  12. In the future, you may want to install this module to have a secondary backup tool: http://modules.processwire.com/modules/process-database-backups/ The following module, automates the above backup process, so this task won't be forgotten or ignored: http://modules.processwire.com/modules/cronjob-database-backup/
    1 point
  13. A complete backup is the database and the site folder which holds the assets, modules, and templates folders. If you remember the processwire version you used it would be easy enough to extract a new modules folder. Maybe add some missing modules you were using for your website. But you would miss the assets folder. The assets folder holds for example the pictures you used on your website. But even that could be restored if you still have the used pictures somewhere on a computer. You would have to reupload them to the back end of processwire. So yes you could have restored again your website but it certainly would take some time. I recommend to use both cpanel backups and also ssh to schedule making backups of your websites on your own local computer.
    1 point
  14. It's getting better and better. Love it,
    1 point
  15. Thank you Pwired, but please note that I mostly posted here working/devs versions (to minimise websites promotions). They are mostly from template selling portals where client buy template (html, wp, joomla... what they likes), and after it my job is full conversion to PW. At the end, many of these templates in source has large part of unused CSS, and because of that, in last step, I like to do and css optimisation/cleaning (eg. using node.js + grunt-uncss). Regards.
    1 point
  16. I am planning to make a PR on github the next few days, in the meantime you could download my version of the module, as soon as I release it on github. Will notify you here.
    1 point
  17. Hi Olsa, Looking at the pages and page sources, these websites are beautiful conversions, nice clear coded.
    1 point
  18. Hello, here are some examples, all is Processwire, and all is conversion from HTML to PW. bistro, lawyer, mtrace, nekretnine, registar, prteam, entext... If you are interested, feel free to contact me. sasaoluic (AT) yahoo (DOT) com Best regards.
    1 point
  19. I've just rolled out version 0.0.3 - checkout the changelog . You should be able to update without any changes in your code.
    1 point
  20. Change the "YouTube: Show Related Videos at the End" to 0 value. It hides the related videos when you pause too.
    1 point
  21. try updating your config.php with your new site url : $config->httpHosts = array('your.newsite.com');
    1 point
  22. Today's update: The inline editor for the backend can now save the changes. And the visual resize tool works now on the breakpoint which corresponds to the current screen size. So you can define the layout for every size visually. http://theowp.bplaced.net/upload/prev3.html
    1 point
  23. If anyone is interested, I have a new fork of this module available here: https://github.com/adrianbj/MarkupSEO/commits/various-fixes-enhancements It's very much a work in progress, but it includes several bug fixes and lots of new features. Please read the commit log to learn about what's fixed and what's new. At the moment you should not upgrade an existing site (new fields won't be created) and probably don't use it on a live site just yet. It's not well tested at all yet, so use at your own peril I'd really appreciate any feedback on it.
    1 point
  24. Nice tip! You can also turn autojoin on and off for selected fields whenever you need via API methods $field->addFlag(Field::flagAutojoin) and $field->removeFlag(Field::flagAutojoin).
    1 point
  25. So, this is kind of a heads-up: I've just pushed version 1.3.2 of ProcessChangelog to GitHub, and this version includes a bunch of UI changes. Hopefully they make as much sense to you folks as they do for me. To be honest the old look of the module was a bit too ProcessWire 2.0'ish, and I've also been meaning to add clickable action/template links etc. for a while now.
    1 point
×
×
  • Create New...