Jump to content


Popular Content

Showing content with the highest reputation on 03/18/2016 in all areas

  1. 11 points
    https://github.com/gRegorLove/ProcessWire-IndieAuth This module allow users to sign in to your site using IndieAuth: IndieAuth is a way to use your own domain name to sign in to websites. It works by linking your website to one or more authentication providers such as Twitter or Google, then entering your domain name in the login form on websites that support IndieAuth. This module has two different functions: IndieAuth Authentication After a user enters their domain name and successfully authenticates, they will be redirected back to your site and the session variable indieauth_domain will be set. You can then use this session variable to customize your site for the user or offer additional functionality. Note: The user is not logged in to ProcessWire at this point. ProcessWire Authentication If you would like to allow users to log in to ProcessWire using IndieAuth, you will need to make a few changes to the user profile. Add a field named website Add that field to the user template Update the User Profile module to make the website field user-editable The user will need to set their domain name in their user profile before they can log in with IndieAuth. Setup After installing the module, copy the template file extra/templates/indieauth.php into your site/templates/ directory. In the admin area, add the new indieauth template. On the "URLs" tab for the template, check "HTTPS only." Create and publish a new ProcessWire page using this template, e.g. https://example.com/auth/ The included template is a minimal, sample template that covers both of the functionalities described above. You can expand the template or integrate it into your existing templates as needed. For more information about the sign-in form and how the verification works, please refer to https://indieauth.com/developers Notes This module does not create user records if they do not exist already.
  2. 10 points
    ProcessWire 3.0.12 now supports the ability to use extended (UTF-8) page names, meaning your URLs can now have just about any characters that you want… https://processwire.com/blog/posts/hello-健康長壽·繁榮昌盛
  3. 4 points
    Thanks for the kudos Peter: http://significatojournal.com/bliss/an-exaltation-of-creativity-and-bliss/the-significato-journal-is-now-a-mobile-first-responsive-website/
  4. 4 points
  5. 4 points
    Some more examples for content blocks: https://processwire.com/talk/topic/10394-content-block-builder-in-processwire/#entry98527 arjen beat me....but my linked post is with descriptions best regards mr-fan example from a pagetableextended version for the admin UI and with templates as partials that rendered on the frontend side.
  6. 4 points
    You have to create a plugin, place it in /site/modules/InputfieldCKEditor/plugins/ and enable it in the fieldsettings under Setup > Plugins Take this one as a starting point: Save the following code as /site/modules/InputfieldCKEditor/plugins/keystrokes/plugins.js // Assigne Ctrl+I to "bold" INSTEAD OF 'italic'(default). ( function() { CKEDITOR.plugins.add( 'keystrokes', { init: function( editor ) { editor.setKeystroke( CKEDITOR.CTRL + 73 , 'bold' ); } }); } )();
  7. 3 points
  8. 3 points
    You can easily build "blocks" yourself. Take a look at the RepeaterMatrix, PageTable or PageTableExtended. Also check the new field rendering options.
  9. 3 points
    Since the introduction of the delayed output I use this a lot: https://medium.com/@clsource/the-wire-render-pattern-806bf6d6097a#.t3ohgu0h3 You can make your own <?php echo $layout; ?> in the _main.php and feed it any blocks you want https://processwire.com/docs/tutorials/default-site-profile/page3
  10. 3 points
    Apologies. I didn't explain myself well enough. Since it is the same database you can easily access all the data. What I was trying to say is: without a SSO it isn't possible for a user to be logged in at the same time on multiple domains in the same session. For example: if a user is logged in www.domain1.com and he visits www.domain2.com the user is not automatically logged in on the second domain. The cookie storing the session data can't be shared across multiple domains. This actually is a good thing so a domain can't access cookies form other domains.
  11. 2 points
    Got it sorted, and complete plugin code is: // Keyboard shortcuts for headings 1-6, p ( function() { CKEDITOR.plugins.add( 'keystrokes', { init: function( editor ) { editor.addCommand( 'h1', { exec: function( editor ) { var format = { element: 'h1' }; var style = new CKEDITOR.style(format); style.apply(editor.document); } } ); editor.addCommand( 'h2', { exec: function( editor ) { var format = { element: 'h2' }; var style = new CKEDITOR.style(format); style.apply(editor.document); } } ); editor.addCommand( 'h3', { exec: function( editor ) { var format = { element: 'h3' }; var style = new CKEDITOR.style(format); style.apply(editor.document); } } ); editor.addCommand( 'h4', { exec: function( editor ) { var format = { element: 'h4' }; var style = new CKEDITOR.style(format); style.apply(editor.document); } } ); editor.addCommand( 'h5', { exec: function( editor ) { var format = { element: 'h5' }; var style = new CKEDITOR.style(format); style.apply(editor.document); } } ); editor.addCommand( 'h6', { exec: function( editor ) { var format = { element: 'h6' }; var style = new CKEDITOR.style(format); style.apply(editor.document); } } ); editor.addCommand( 'p', { exec: function( editor ) { var format = { element: 'p' }; var style = new CKEDITOR.style(format); style.apply(editor.document); } } ); editor.setKeystroke( CKEDITOR.ALT + 49 , 'h1' ); // ALT + 1 editor.setKeystroke( CKEDITOR.ALT + 50 , 'h2' ); // ALT + 2 editor.setKeystroke( CKEDITOR.ALT + 51 , 'h3' ); // ALT + 3 editor.setKeystroke( CKEDITOR.ALT + 52 , 'h4' ); // ALT + 4 editor.setKeystroke( CKEDITOR.ALT + 53 , 'h5' ); // ALT + 5 editor.setKeystroke( CKEDITOR.ALT + 54 , 'h6' ); // ALT + 6 editor.setKeystroke( CKEDITOR.ALT + 55 , 'p' ); // ALT + 7 } }); } )(); After adding the plugin it needs to be activated in the field settings > Input > Extra Plugins keystrokes.zip
  12. 2 points
    And to keep the copy pasting errors to a minimum: http://codepen.io/LostKobrakai/full/xVgooN/
  13. 1 point
    A ProcessWire Fieldtype storing files in a customized location, outside the web root. This module is primarily useful if you need to store sensitive data which should not be accessible directly from the web. Normally, ProcessWire stores all files under /site/assets/files. Direct URL access to these files can be restriced by setting $config->pagefileSecure = true. Still you need to make sure that your template permissions are setup correctly. If something goes wrong, those files could be accessed from outside. GitHub: https://github.com/wanze/FieldtypeSecureFile Modules Directory: http://modules.processwire.com/modules/fieldtype-secure-file/ How does it work? After installing this module, you can create a new field of type SecureFile. Enter your configuration under the "Details" section when editing the field: Storage Location Enter a path outside the web root where the files are stored. You need to create the directory manually. Also make sure that the user running the web server has write permission. Roles allowing to download a secure file Users with a role selected here are able to download the files if a download is requested via the API. Allow Download in Admin If checked, users having a role selected above can download the files when editing a page. I needed this functionality for a recent project, so I created this module and thought to share it, mabye this is useful for someone else Consider it beta, I'm using it on one site but I'm sure it could be improved here and there. Feel free to suggest additional features! Cheers
  14. 1 point
    ProcessSlider Module (alpha version) Repository https://github.com/mauricius/ProcessSlider Introduction Like many of you, I came to ProcessWire from Wordpress and immediately I fell in love with its power and its clean syntax. I have to say that PW has become my default choice for building websites. However there is only one thing that me and my clients miss from WordPress and is the ability to visually build image sliders through plugins (Nivo, Revolution Slider, LayerSlider, just to name a few). So I decided to create a module for this purpose. ProcessSlider essentialy is an editor for the wonderful Jssor plugin (http://www.jssor.com/) which is absolutely free. The module creates a new page under the Setup menu which allows users to easily add image sliders on the site using an intuitive visual editor. To each slider you can easily add images and other custom and animate them using the transition effects provided by the Jssor slider. The ProcessSlider module in reality is composed by three different modules: ProcessSlider: the main module InputfieldSlider/FieldtypeSlide: allows the user to use an existing slider inside a page MarkupSlider: converts the slider into Jssor compatible markup and optionally provides the necessary initialization script Features Custom slider size Drag and Drop interface Move and resize elements Slides background with images from existing PW pages Slider Preview (with the provided MarkupSlider module) Predefined style classes for Elements Add or remove Slides Add or remove elements Change slide order visually Jssor skins and bullets support Visual Timeline Optional responsive/fullwidth slider Predefined elements: Images, Text, Links, Image as link, Div blocks, Youtube Videos Animation Options (In and Out): Animation type, Delay, Duration The editor is built with Vue.js+Webpack and uses jQuery for D&D and resize functionalities. Release I'm going to release the module in a couple of weeks, there are still some minor tweaks and improvements that I would like to add. Demo Screencast (be sure to watch it at least at 720p) I hope it will be helpful to the community and I would be glad to get feedback or suggestions for improvement! Please also consider that it is my first PW module, so probably I'm missing some best practices, hopefully the most experienced developers can throw me some hints
  15. 1 point
    Hi guys, I wonder if anyone's figured what exactly from mod_pagespeed prevents asmSelect to load/work in PW admin. The server has mod_pagespeed enabled with a ton of optimizations and everything seems to fly except for asmSelect not loading/working. As soon as I turn off pagespeed for admin dir, it works straight away. In case anyone is interested: <IfModule pagespeed_module> ModPagespeedDisallow http://*amazingdomainname.com/ungessableadminlink/* </IfModule> I will spend more time narrowing it down when I have time, but just wondering if anyone's had the same run in with it? cheers, k
  16. 1 point
    Hi PW Fans, I´m developing a little webapp in cooperation with an local tax consultant. Not really styled so far, the focus in this moment is setting up the functions and logics. General needs: - accounting - rudimentary client organization - invoice management - creating invoices - multi user possibility with different page-permissions Done so far: - accounting The app meets the needs of german bookkeeping for small business. Also it could be used for the so called "Kleinunternehmer" by just setting a checkbox. Well, the next thing to be done is a export function for "Datev" a german tax software. If somebody is interested to beta test the suite just put your hand up and I will send a copy (Attention: no multilanguage. Everything is in german). Some screenshots:
  17. 1 point
    Here's an article that is mostly about Concete 5, but makes some comparisons with PW - maybe some ideas in there! http://www.spiria.com/en/blog/websites/concrete-5-top-user-friendly-cms Note that Guy also wrote a dedicated PW post: http://www.spiria.com/en/blog/websites/processwire-light-powerful-elegant Not sure if that has been posted here before or not.
  18. 1 point
    @tpr, actually it is. I love the new Job but moved away from Agrio with very good feelings. I realy like the guys/girls over there. There were multiple parts to that project, one part was the content management in ProcessWire. It works quite nice and I feel good about it.
  19. 1 point
    http://modules.processwire.com/modules/markup-twitter-feed/ This module works fine, though you will have to generate the markup to achieve the "looks" of the Wordpress plugin you are puttin as example. Although, thanks to Processwire, nothing will get in your way to accomplish this Check this part of the module documentation: You might also want to to take a look at: https://dev.twitter.com/overview/api/tweets To know how the tweet objects are organized in the array returned by the module. (take a look at how $item variable is accesed when echoing the string)
  20. 1 point
    I'd rather take a look into the session fingerprinting configuration for this one.
  21. 1 point
    Hi Danjuan, welcome! Take a look at the application luis build a while ago. It's released not long ago, but it isn't maintained. But it'll give you some insight in how he approached a similar situation.
  22. 1 point
    On my current site (non PW) we have a number of users setup who can view private html pages. They have no access to the Admin but have access to a private section assuming they login via a front end form. That's the plan for Saturday Imagine I'll get sidetracked with playing with the new Media Manager module though!
  23. 1 point
    I'd start by checking the $config->httpHosts setting in /site/config.php. Make sure that all domains are listed there (or none, though that's not really recommended). If that doesn't help, you could try enabling debug mode temporarily (also via /site/config.php) to see if it displays more information about what exactly went wrong.
  24. 1 point
    hi danjuan, welcome to the forum! this would definitely be possible using processwire, but it would not be a very simple task... i think you will get help here whenever you need it, but it is better to provide as much information and as much detailed questions from your side as possible. we can also not know how experienced you are and according to that the answers would differ significantly. your question is a little bit like. "hey, i discovered processwire yesterday. how can i build something like facebook?" obviously most of us can't provide such kind of help here in their spare time so please be more specific and show what knowledge you already have and what you already tried on your own to reach your goals.
  25. 1 point
    Hi @Hantsweb, Glad you like the module. Technically, you can't 'attach' the module to a field in one of your templates . But I think I get what you are saying. You want uploaded files to be added to a field on some page(s). Before I dive into an answer, I hope in your upload implementation you've remembered to...'never to trust your users',...especially those who are allowed to add things to pages and whether what they've uploaded is immediately viewable on the frontend . Yes, the module does very thorough validation and will only upload what you've allowed to be uploaded but its always good to double check. Below are links to some code I've previously posted that will be of help. What is your workflow? Are user uploads immediately added to a page? Are there unique pages for each user? Are compressed files (zip) in play? Whatever the answer to these questions, the basics are the same: Upload files to your server to a specified temporary folder(s). During the process validate the files: JqueryFileUpload Iterate over the folder with the uploads: I always use PHP SPL class for this, e.g. RecursiveDirectoryIterator In each iteration, add valid files to specified pages (if those pages are not being created by the uploads): Use ProcessWire for this Delete uploads in the temporary folder Example code: https://processwire.com/talk/topic/10815-mass-create-pages-or-mass-upload-images-and-thus-create-pages/?p=101791 https://processwire.com/talk/topic/8416-importing-many-pictures-in-a-page/ If you are adding to files to pages directly after they've been uploaded, you will want to listen to Ajax requests sent by JqueryFileUpload like so: if ($this->config->ajax) { // you code here for iteration, creating and/or adding files to pages } Let us know if you hit another brick wall
  26. 1 point
    A project that I started at Agrio. (Now have an other Job) They nice folks over there are continuing that project so that makes me happy . I guess they have to do mainly front-end work now. Probably they make it a JSON API... Thats the way I would have gone.
  27. 1 point
    Our main audience are currently web designers/developers that require a platform that does most of the heavy lifting for them, but allows them to freely modify data structures, markup, and even back-end functionality of their sites. WordPress, on the other hand, is famous for trying to cater for all kinds of users – even those who don't ever want to touch or see any code *or* markup at all. As a result they're not particularly good at anything and just trying to keep their current codebase in good shape seems to be nearly impossible task. I'm not saying that ProcessWire is already as good as it can get – quite the contrary. We've taken huge steps in so many ways in just a few short years and will no doubt continue doing so in the foreseeable future. The point I'm trying to make is that "converting all WordPress websites over" isn't necessarily a goal worth striving for. At the very least that's not what motivates me personally. Correct. Site profiles provide a starting point, and after installing one of those you can customize your site as you see fit. While I have no idea what you mean by "making it custom", the thing is that site profiles in general are not interchangeable like WordPress themes. This is what I was referring to in my previous post: we've had some discussion about agreeing on specific fields, based on which we could develop interchangeable themes. Not entirely sure what's up with that project right now, but it sounds like this might be something you'd be interested in pursuing too. Actually you could make any module output styles, and some modules already do that. Some existing options include using the $config->styles or $config->scripts arrays (though they also need to be included in your markup somewhere), altering generated markup with a page render hook, and simply outputting styles or scripts in the middle of generated markup. I'll have to agree that these may not be exactly clean solutions at all times, but on the other hand, have you ever debugged a WordPress site with a ton of plugins adding their own styles/scripts? Trust me, "clean" is not how one would describe that either In my opinion this is a very cool idea, but absolutely not something the core should do. Without going into specifics, nothing you've mentioned so far can't be done with a third party module. If this is something you feel is missing from ProcessWire, feel free to give it a try. You might even find some like-minded people here who'd be willing to help. In some ways I'll have to agree, but it's really not that simple. WordPress a) was around at the perfect time, b) decided relatively early to cater for the needs of everyone out there, c) doesn't care about how they're perceived by the technically adept audience, and d) doesn't care how much technical debt they amass in the process. I don't think that any platform can really take them head-on when it comes to number of users: at this point their popularity is also their biggest asset (assuming that "being the most popular platform out there at any cost" is really a sensible goal.) Agreed, and we *are* already expanding our audience. You haven't missed the Composer stuff we've been adding lately, have you? It's just that we've been aiming for expanding our audience to a slightly different direction than you had in mind I hate repeating myself, but I'll do it anyway: build a module. Publish it. If it's awesome and a lot of people love it, it has a good chance of becoming a core feature one day.
  28. 1 point
    I'll have to look into Mailgun's webhooks API, and see if it's possible to get incoming notices from this. The stats sometimes take some time to update, but never really long. If you really want to see what's going on, the Logs tab on Mailgun is much more efficient and is pretty much instant. I would really recommend that you do set your SPF and DKIM, as there are a bunch of penalties on accounts who don't.. https://documentation.mailgun.com/quickstart-sending.html#verify-your-domain
  29. 1 point
    thats.sound like hole diffrnt cms no ? WirePress why sholud pw main stream ? pw is seaworthy.vessel not canooe for stream
  30. 1 point
    Just use httpUrl instead of url.
  31. 1 point
    to @Ryan and dev team. It has happened that I've started development of notification system for users and found that there is already SystemNotifications module and related classes in core. Before development of own bicycle I've decided to check if it is required) and/or use a chance to add few wishes at moment when this module is under development. Please could you share thoughts/plans on the following: 1. currently flags in Notification are protected static. It limits possibilities to extend class by adding custom flags and handlers for these flags in FieldtypeNotifications. For example, notification flags for SMS or messengers, like Telegram. They can (and probably should) be handled in FieldtypeNotifications in the same manner as emails. At my site I use both SMS and Telegram notifications. Also, I think preferred notification methods should be set by (or for) user. 2. emails (as well as other "contacts" like cellphone number for SMS, etc) could be taken from different user fields, depending on some condition. In my system for example, sales managers roles need to get internal emails to corporate emails while being users, they get emails from system email field. E.g. "contact fields" should be customizable and/or hookable. 3. currently notifications are removed as soon as user closes them. There could be notifications that require action(s) (e.g. changes at some page); while these actions are not performed, notification should remain. E.g. it is some form of "todo" notification controlled by the system. Also there could be actions which can not be controlled by system, e.g. user should either confirm "done" or "cancel" or "postpone" them manually. Do you consider such "to-do" notifications as something that should be developed separately OR you think that they may be realized in the scope of SystemNotifications? 4. currently at UI level notifications are injected through predefined core js/css and predefined admin DOM structure. This limits possibilities to make notifications UI different. For example, I'd prefer to give my users "Facebook style" icon & attached notifications menu. Is it possible to leave hooks and/or module config params that opens a space for js/css replacement/adjustment and possibly more admin DOM extras (like adding menu items)? Thank you!
  32. 1 point
    hi kongondo, which version do you use? Try upgrade to 1.1.2: apeisa already solved that bug.
  33. 1 point
    You want something like this?: http://codepen.io/Da-Fecto/pen/aNppXr
  34. 1 point
    There is a fix needed in the .htaccess file to allow services like Let´s encrypt to use the webroot authentication method. I created a pull request for this https://github.com/ryancramerdesign/ProcessWire/pull/1751
  35. 1 point
  36. 1 point
    To not copy my suggestion again: https://processwire.com/talk/topic/12409-prohibit-view-of-pages-with-certain-template/ I'd really refrain from using $page->render() for rendering partials in favor of wireRenderFile().
  37. 1 point
    jQuery-inspired is in my opinion the best short description of our API. "An easily approachable and powerful API" is way too generic, especially since the jQuery connection is actually an important point. ProcessWire's API is modeled after jQuery, after all, the general idea being that "if you know jQuery, you'll learn ProcessWire development in no time". On a related note, personally I prefer to discuss it as the "developer API", not just API. On a couple of occasions I've had to specifically explain that ProcessWire doesn't actually expose a public API automatically. The Finnish translation ("rajapinta" vs. "kehittäjärajapinta") seems to be even more prone for misunderstandings
  38. 1 point
    Here we are Luis.... just set up a public repo: https://github.com/mr-fan/Officesuite Just created a exported siteprofile from a actual 2.7.1 PW version. So every one could install it simple as a site profile. Now the last question is the license and your permissions and wishes about that topic. May we should go with GPL or release it as simple Public Domain: http://choosealicense.com/licenses/ For me i think it could only stay as a example application for learning some stuff - the app itself can only used partly while some things in accounting and billing changed and everyone that use this app should care about this things (for example IBAN and BIC instead of banking accont number...) But it is your piece of work and it is your decision. @all - this is a german language application and for multiligual frontend we have to change every hardcoded string in the templates....so to a multilang working out of the box app some work is on the road...that i could not do alone. So every one that is interested in helping could send me a PM for further work on this - or every one could use it as it is... regards mr-fan
  • Create New...