Jump to content


Popular Content

Showing content with the highest reputation since 12/06/2019 in all areas

  1. 6 points
    @adrian @eydun Made some progress and have a working version that is compatible with @Macrura's Settings Factory module. I switched to handling my field value as json. Haven't published the version yet as I'm planning on incorporating it into the yet to be developed new ImagePicker module. If you want to have a peek, I can publish it to a separate branch on github. Just let me know. First I was in doubt about using json for the field runtime value and for storage. But now I'm confident that this is the way I will go with the new ImagePicker module. So that one will be compatible with Settings Factory. The next days I will be working on combining this module and my ImagePicker (pick from folder) into one with the additional feature of letting the user choose an image from the page this field liveson. The resulting module will be released under the name ImagePicker. Hope I can get it out before Xmas.
  2. 6 points
    What @gebeer said. It could even be as simple as that in /site/ready.php if($page->template == "admin") { if(!$user->hasRole('your-role')) $session->redirect($pages->get(1)->url); }
  3. 6 points
    LoginRegisterPro <-- Great News!!
  4. 5 points
    And done 🙂 0.5.0 released
  5. 5 points
    It would be, but as we all know, life is not as straightforward like that 😉 There are issues Ryan solves pretty fast after being reported, there are others that take more time and there are some which seem to take forever... and the worst category is in which he is only marginally interested. Also, what we might provide as a "fix" via a PR can easily turn out to be just a workaround and there is no point in submitting such a PR. For example, in all of my use-cases PageTable without an "add new" bottom at the TOP of the table is a UX nightmare, so I have a JS hack to clone the button from the bottom to the top. In my point of view I "fixed" this is issue, but in reality it is just a hack which would be a good fit for this module, I think. Maybe we should call this module PwQuickFixes which might better reflect its intended purpose: temporary workarounds until they get properly fixed. We just need stats to see how many of us is using a particular quick fix, and another way to make our voice heard is to add a kind nudge by asking the user to go to the related Github issue in order to make her/his voice heard too.
  6. 4 points
    I just implemented it here: The only changes I had to make to the module were to set the root path higher than the default site/templates/ so that I could point it to /site/assets/files/xxxx and it works brilliantly! BTW, this is what the Global Images page looks like:
  7. 3 points
    I think "2" for sure. I think the thumbnails should be as you currently have them when there is more than one page with available images - in collapsed inputfields - one for a defined filepath, one for the current page, and one for each of the other available pages - which of these are shown of course will depend on the field's settings.
  8. 3 points
    @rick, @d'Hinnisdaël, @cb2004, @szabesz Thanks for your input! So the coming PW master version will be the minimum required by SnipWire. This will make things definitely easier for me...
  9. 3 points
    @szabesz had already mentioned it in this thread. But I think it is worth picking up again. I recently switched to https://vscodium.com/ and it is working absolutely great. It removes Microsofts branding and, more importantly usage telemetry. It is available for all platforms. Only drawback I could see is not having automated one-click updates. I'm all for open source and privacy. Microsoft's VS Code is based on the same codebase as VSCodium only MS adds their branding and collects lots of data because, well, that is just what they love to do. Being a Linux user for more than 15 years now, I really appreciate MS releasing this phantastic editor to the community. At least they are giving back a fraction of what they earned over the last decades with their half baked software which they make their beta testers pay a lot of money for. Ingenious concept, though...
  10. 2 points
    After giving it some more thought, I decided to merge the 2 modules and call the resulting ImagePicker. One thing I'm not sure yet how to best approach it: 1. should the options for choosing images from pages/folder/current page be exclusive, so that only 1 option can be set per field? Or 2. should it be possible to choose all 3 I guess, 2 makes more sense. The challenge will be to make the UI/UX of the inputfield lean, clear and easy to deal with. Instead of having the thumbnails underneath the preview image, I think with that many possible sources for images, it will be better to present them in a modal window.
  11. 2 points
    BTW, when can we expect that to happen? Sounds like sooner than the end of December maybe? Is it going to be the first production ready version? Thanks for sharing all your hard work, and do not forget to ship it with a "Donation button".
  12. 2 points
    Hello and thanks for reply 🙂 @MilenKo thanks for idea about html. According to your idea the body_html field becomes an element content. Sounds good I want to try 🙂 For a diagram visualization simpe it is https://www.draw.io/ You can add this "app" to your google drive if yuo want 🙂
  13. 2 points
    @Pete @ryan I can not login into the Developer directory https://directory.processwire.com/login/. After entering my credentials, I am being redirected to the URL "http://login/" which is wrong. I want to change the information about me, so it would be nice, if this could be fixed. Duplicate of:
  14. 2 points
    Just an opinion and the same @Gideon So already said but... this module should be part of ProcessWire by default. It saved me hours today. Literally.
  15. 2 points
    Welcome to the forum, @Ovolion. It sounds like you would be better off using a dedicated e-commerce solution such as PrestaShop. Not that ProcessWire can't accomplish the same thing, but in this case I think it would be better to go with a dedicated solution. Just my $.02
  16. 2 points
    Nowhere. This is embarrassing. I forgot about language field when I rewrote the module for alternative graphql library. My bad, sorry. New Version 1.1.0 I updated the module to support languages now. Please upgrade and it should work fine. Sorry for inconvenience and thanks a lot for the feedback.
  17. 2 points
    @kongondo's Media Manager module offers a lot more than this module would offer even with the child pages feature, so as far as I can see it you are not working on something like that. The suggested child pages feature would be welcome but if you stick to the one page only solution than that is great too.
  18. 2 points
    Exactly the same thought came to my mind. Will implement this as an option.
  19. 2 points
    Please read this: https://processwire.com/blog/posts/pw-3.0.80/#pro-module-faqs then contact Ryan directly.
  20. 2 points
    Tis the season to clean out the mechanical keyboard (first time in 7 years)...
  21. 2 points
    Sure - I added 2 files with adminonsteroids: site/template/admin/admin.css site/template/admin/admin.js With these codes I hide following features: Image Cropping Image Variations Image Title change Image Actions Image Change on Drag & Drop /* added ot admin panel sites */ .InputfieldFileActionSelect, .InputfieldImageEdit__info, .InputfieldImageEdit__buttons button { display: none !important; } .InputfieldImageEdit__buttons button.InputfieldImageButtonFocus { display: inline-block !important; } .InputfieldImageEdit__name span { cursor: default; } .InputfieldImageEdit__imagewrapper .detail-upload { visibility: hidden !important; } // added ot admin panel sites $(document).ready(function() { $('.InputfieldImageEdit__name span').removeAttr('contenteditable'); });
  22. 1 point
  23. 1 point
    JqueryFileUpload This module is a ProcessWire implementation of the awesome Blueimp jQuery File Upload plugin. Server-side, the module provides a custom uploads' handler enabling you to perform various tasks with ease. The module is an interface of the feature-rich Ajax File Uploads widget provided by the jQuery File Upload plugin. The module is completely customisable and can be used both in the front- and backend (e.g. in a third-party module). Please read the README carefully and completely before using the module Release Status: Stable. Module Download: http://modules.processwire.com/modules/jquery-file-upload/ Issues tracker Project page: GitHub Security The module has been written with security in mind and makes no assumptions about any client-side validation. Instead, the module provides robust server-side validation of uploaded files. Server-side, no Ajax requests are honoured unless specifically set via configurable options server-side. This means that client-side requests to upload, delete and list files are not executed unless allowed server-side. By default, files are uploaded to a non-web-accessible (system) folder and files previously uploaded on the server are not sent back for display unless that setting is enabled. However, developers are still strongly advised to implement any other feasible measures to guard against malicious uploads, especially if allowing frontend uploading. For instance, developers can use native ProcessWire checks to limit access to the widget (e.g. only allowing uploads by registered/logged-in users). Demo A short video demo can be found here (and below )(CSS is WIP! ). In the backend, you can see it in action within the (upcoming) module Media Manager Features Fast Ajax uploads. Client and server-side validation. Client-side image resizing (highly configurable options). Beautiful touch-responsive image gallery preview. Audio and video previews pre-upload. Chunked and resumable file uploads (currently client-side only; server-side handling planned). Drag and drop support. Copy and paste support (Google Chrome only). Progress bars. Cross-domain uploads. Single or multiple uploads. Delete uploaded files. Documentation On GitHub. Have a look at the long list of available options. License Released under the MIT license @Credits: Sebastian Tschan @Thanks: Pete and BernhardB for the idea. Please test and provide feedback. Thanks!
  24. 1 point
    Completely agree. The module will only profit from you enjoying working on it, so go easy on yourself and make use of available core features where necessary. Besides, ProcessWire is ridiculously easy to keep updated, so I don't feel like you're leaving anybody behind.
  25. 1 point
    Oops, sorry, totally slipped my mind! I'll have a look 😄.
  26. 1 point
    Hi @venkatesham, welcome to the forum, not sure, but I think it is this one: https://github.com/ryancramerdesign/skyscrapers2
  27. 1 point
    This could also solve my request of adding images directly to that page 🙂
  28. 1 point
    Hi @Noboru I have a clue what's causing this problem. I need a little time. I'll contact you when I have fixed that. In the meantime you could comment out the following lines in file SnipWire.module.php (should be line 96-98) $this->addHookAfter('Pages::saved', $this, 'publishSnipcartProduct'); $this->addHookAfter('Pages::unpublished', $this, 'unpublishSnipcartProduct'); $this->addHookAfter('Pages::trashed', $this, 'unpublishSnipcartProduct'); -- Martin
  29. 1 point
    Another thought for you - what about the option to select an image from an images field on the current page? I know sometimes I ask users to sort images so that the featured image they want is the first one in the list, or get them to tag an image with "featured", or some other approach. Being able to select an image from the current page with this field would be an awesome way of handling this.
  30. 1 point
    Hi, When I try to log into the PW Developer forum to create a profile, it breaks and takes me to: https://login/ Yours, Peter
  31. 1 point
    Thanks @bernhard, I'll dig it deeper with your suggestion, even though it seems like their rates are way too high for my project. @psy Nice module! I'd love to use it to complete this task, looks like it could let me easily list files of a dropbox folder into my site. How to share, instead, just some specific files (belonging to the dropbox folder) to a specific user? The ideal situation would be: 1) My client (whom is the one has access to the dropox panel and can upload files) decide to share just few files to user "x" (user "x" has previously registered to my pw site and has a private page). 2) Choosen files appears as links on the private user page ( I've noticed this on the thread you posted, but it's just part of the job). One solution that comes into my mind would be to copy/paste such file links to a repeater belonging to the user page and iterate it on the front-end.
  32. 1 point
    Hi @Jonathan Lahijani - I've just seen the open issue in Github, which should be resolved now. Are you still getting the issue above on this latest version?
  33. 1 point
    Thanks! Hugely usefull! Think my main issue is the grid editing element so I might implement most of the site and leave the editable image/link section till last and maybe look at building something. I would like it to mirror the frontend as much as possible, so i could just use css grid and do some limited js stuff pushing the page id's, item number and span columns and rows into the database..... mmmmmmmmmmmmm
  34. 1 point
    There is an old video around that shows how it could be done. It's the older version of ProcessWire in that video but it would work the same nowadays - just looks a bit different now. In terms of best workflow... it really depends on various factors as @bernhard already mentioned. I wrote about my personal workflow in or with ProcessWire here and here.
  35. 1 point
    Hello, thanks a lot for your messages and applications. We are happy to have found someone who will support us. Regards Annemie
  36. 1 point
    Here is my final init.php code for bilingual password forgot. if (wire('session')->language) { wire('languages')->setLanguage(wire('session')->language); } $wire->addHookBefore('ProcessLogin::execute', function($event) { if (wire('input')->lang == 'fr') { wire('languages')->setLanguage(7085); wire('session')->language = 7085 } });
  37. 1 point
    @gebeer - I am sure you have already thought of this, but if you're changing to only support selecting a page (and its children), you could make use of PW's API to load up the images in the picker field, rather than scanning the server folder directly. I don't think there is a reason not to change.
  38. 1 point
    You should be able to do that with any module, but you will likely also need to delete its entry from the modules DB table so that PW isn't looking for it. That said, I'd like to know more about the login issue - never heard anyone have that problem before - those details on PHP version etc will be useful.
  39. 1 point
    What about adding the image description, width, height, and filesize to the tooltip and under the selected image?
  40. 1 point
    Hi @dadish the module is awesome. But i have some troubles with language support. Here is my query: { language(name: "default") airport(s: "limit=4, sort=title") { list { id title } } } Here is the response problem: { "errors": [ { "message": "Cannot query field \"language\" on type \"Query\".", "extensions": { "category": "graphql" }, "locations": [ { "line": 2, "column": 3 } ] }, { "message": "Cannot query field \"title\" on type \"AirportPage\".", "extensions": { "category": "graphql" }, "locations": [ { "line": 6, "column": 7 } ] } ] } title field has type - Page Title (Multi-Language), but as it mentioned above response is "Cannot query field \"title\" on type \"AirportPage\" Here is GraphQL module configuration screen. Where did I make a mistake?
  41. 1 point
    I could, but I am not sure if you want to refine things a little more than my quick hack. I just replaced all instances of $this->config->paths->templates and $this->config->urls->templates with $this->config->paths->root and $this->config->urls->root I think perhaps it would be better to have an option in the field's settings to actually choose a page rather than manually /site/assets/files/xxxx - what do you think?
  42. 1 point
    In you home template, you could do something like: <?php $newsArticles = $pages->find('template=your_news_templates'); foreach ($newsArticles as $newsArticle) { echo "<a href=\"" . $newsArticle->url . "\">" . $newsArticle->title . "</a>"; } ?> This would output each article's title (as well as a url to the article). Obviously you can change the markup to whatever you would need.
  43. 1 point
    We recently relaunched DOMiD, the Documentation center and Museum of Migration in Germany. Concept, design and implementation by schwarzdesign. Features Bilingual site with German and English A section-based design focusing on flexibility and ease-of-use for editors Multiple forms built with FormBuilder that can be placed on any page Separate feeds for news & press releases Lightning fast page loads with almost perfect ratings in Lighthouse Completely accessible and SEO-friendly Notable tech decisions Forms and form placement There are multiple forms for different services that DOMiD offers. Those are built with the FormBuilder. The editors don't have access to the FormBuilder itself, but we still wanted to allow them to control which form is displayed on what page. For this purpose, every page has a select field to select which form to include (if any). Additionally, the form placement has additional fields for a headline and a description, so a generic contact form can be reused in different contexts. Section-based design Most pages are built through Repeater Matrix sections. There are multiple section types available, for example: A generic text / image column with up to three columns of text and images An accordion (rendered as <details> elements). An image gallery Downloads (for files and images, displayed as a list of downloads) External Embed (e.g. YouTube) All sections have an optional headline and a selection of three different background colours. In addition, text columns may be rendered as a coloured block with some padding. This allows for interesting and diverse layouts. Testimonial database One of the available sections is for testimonials or statements (you can see one at the bottom of the homepage). Because one testimonial may be displayed on multiple pages and the client wanted to be able to switch the displayed testimonial on the fly, there's a separate content type for statements. The statement content type has fields for the statement text, author, and author image. The testimonial section only has a page reference field to select which statement to show. This way, the testimonial definition is separate from the placement on a page. Modules used Form Builder Pro Fields (Repeater Matrix in particular) Unique Image Variations ALIF - Admin Links in Frontend Sitemap Wire Mail SMTP Developer Tools: Tracy Debugger, Duplicator, ProcesWire Upgrade Migration museum As a sidenote for anyone living in Germany, this month the German Bundestag has approved funding for DOMiD's first Migration Museum ("Haus der Einwanderungsgesellschaft")! The museum will be build in Cologne and is scheduled to be finished by 2023. We're looking forward to it! Check out this page if you want to learn more, or find out what people are saying about it here.
  44. 1 point
    Go to the settings of your CKE field, TAB Details at the bottom are a few options. One of them is: Replace blank alt attributes with image description Check, and done!
  45. 1 point
    The thing to remember is that this setting is called the "Formatted value", i.e. the value when output formatting is on. When output formatting is off the value of an image field is always a WireArray. And in your code, you specifically turn output formatting off before you work with the field (as you must). If you treat the image field value as an array I think it will work as expected. Something like: $page->of(false); $page->photo->removeAll(); $page->photo->add('https://example.com/img.jpg'); $page->save(); $image = $page->photo->last(); $image->textfield = 'Some text'; $page->save();
  46. 1 point
    That's not only for PW development but if you've never tried the remote development feature of vscode you should definitely check it out! I'm using it for all SSH related stuff now (server administration) and it's been an awesome experience so far. Compared to the console you get a lot of benefits: open any file directly in vscode for editing ( "code foo.txt" will open foo.txt in vscode ) upload files via drag&drop, download via right click add different folders to your workspace (eg you can attach /var/www/vhosts and /etc/apache2) use ctrl+p to quickly search for files use the GUI to quickly search for any text in any files/folders get a full and awesome GIT integration (+GUI) extremely easy setup, just download the extension, add a host (host + user) and it works (using ssh keys) In the left bottom corner you can see that I'm connected to a remote host. Working on it is just as if it was your local machine 🙂 Intelephense does not work, but I develop locally anyhow and for all server administration stuff there is really everything I need.
  47. 1 point
    Building lots of process modules? This snippet might be something for you (hit ctrl+shift+p and type "snippets" and create/edit php.json): And one for creating the execute methods. I'm almost always rendering forms in those methods, no standard html, so this makes me more efficient:
  48. 1 point
    Hey @Mike Rockett, Any chance you could add this module to Packagist? Would love to use it on my current project, but I'm relying on Composer. Would be nice not to have to install this module via Git or add the repository manually to composer.json. It would also be awesome if you could declare type as pw-module and add wireframe-framework/processwire-composer-installer as a dependency for easy installing. Thanks for considering! 👌🙂
  49. 1 point
    Since today, 31-01-2018, we have support for this in the PW Core. Therefore I updated this module to version 2.0.2 This version handles the detection of the core support and dismiss its installation then. If the core module is available but not installed, it get installed instead of this third party module. If you have this third party module already installed since a previous PW version and upgrade your wire folder, this module will detect the core module and install it. Its own hook isn't registered then and you get a notification about the changes.
  50. 1 point
    In addition to this, I also recommend reading up about the very basics of Object Oriented Programming, http://www.tutorialspoint.com/php/php_object_oriented.htm at least the concepts behind it. Although in the case of ProcessWire frontend development you are not "forced" to implement anything in OOP, knowing the fundamentals helps a lot to understand the API and its usage. An often used technique in the OOP world is method chaining. You do not have to use it, but when you want to look up someone else's code, you need to how and why it works: http://www.xpertdeveloper.com/2010/09/method-chaining-in-php/ BTW I highly recommend bookmarking http://www.tutorialspoint.com/php/ You can use this method before you jump into your trial-and-error experiment: Whenever you start working on something unfamiliar, say sending emails, study some basics in pure PHP, say: http://www.tutorialspoint.com/php/php_sending_emails.htm After that, look for alternatives in the ProcessWire world: API support, module support Of course, it is recommended to use the API and/or modules whenever you can, but understanding why is so makes working with them easier. Hope this helps, good luck, and never give up!
  • Create New...