Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 10/30/2015 in all areas

  1. After finding ProcessWire, I knew it was the perfect fit for our corporate site. The power behind PW meant I could do anything I wanted quickly and efficiently. I very quickly moved on from WordPress to PW for our clients and I have never looked back. WordPress has always been frustrating to use however I felt the alternatives I found came with their own faults also. However this is a very different story with ProcessWire, it ticks every box. The API is powerful, versatile and easy to use. The CMS is secure with no known venerability (how great is that!), The templating is very easy and sticks to PHP convention. There is plenty of custom fields in the core, but great module support also. But also it's very easy to use for clients. All these are important and ProcessWire ticks every box (including multi-language). I can't thank you enough Ryan (and others working the project) you have really made an excellent product. http://www.thebrandnewidea.co.uk/ I look forward to hearing your feedback.
    11 points
  2. Come on, adrianmak! You are on the block for a while now and know that all the cool kids use dev branch. I can't live without the Saturday morning presents on the blog and certainly do not want to wait for half a year to get them) There are no hotfixes to stable branch (at least that I know of) so really no point in staying behind.
    4 points
  3. Update version 1.0.3 (Dev only for now) Note: Haven't had time to update README Changes Export to CSV feature: Can export whole matrix (default) or limit to specified row range (e.g. start at row#2 and end at row#10 ). These are set in the collapsed fieldset 'Import/Export CSV Data' below the matrix. Exported CSV files include timestamp in the file name. Some CSS styling for buttons. Option: Set alert message to show after clicking 'clear data' button. If message set, show alert if no message specified, do not show any alert. Note: now using a custom popup rather than the ugly + annoying browser popup . Option: Save empty values. Default is no; do not save empty values. Current status shown at the top and bottom of the matrix table. Option: Show row numbers. Default is no, do not show row numbers. Fixed a bug where older saved values would still appear after one switched to using custom PHP code to return rows and columns. Added checkboxes for row selections (see #8). Clear Data: Rather than wholesale clearance, button will only clear values of selected rows (see #7). Will show a popup if you try to clear without first selecting at least one row. Fixed some minor bugs in situations where there would be more than one matrix table on a page. Some stylistic changes to rendered fields in line with above changes. Code re-factoring.
    4 points
  4. I actually like the typing animation, but the lines shouldn't jump when going into the next line. I think just changing this bit will make it less eye hurting.
    3 points
  5. I think too, that actually a general maintenance module would be great. There are some maintenance tips and pieces spread over this forum. About cleaning unneeded assets dirs, and so on, cleaning up databases, there even is some extendable monitoring + maintenance module already there - without much functionality yet, but anyway. (For WordPress there is a modle that can force rebuilding image variations/thumbs. I found that useful in some situations. I am missing this sort of technology here, too.) some examples: https://processwire.com/talk/topic/4437-delete-orphaned-filesimages-from-siteassetsfiles/ https://processwire.com/talk/topic/9383-search-and-replace/?hl=search http://modules.processwire.com/modules/process-diagnostics/ (can cleanup databases)
    3 points
  6. Hi everyone, New version committed to the dev branch which adds some interesting new features. I have had some clients confused by the use of child pages for repeatable elements. I know we have PageTable, but a couple of versions ago in BCE I introduced the ability to embed the editor within the Content tab (or a new tab, etc). This provides an alternate interface for editing child pages within the parent page. I think this was useful (and has become my default over PageTables). It can be especially cool in Lister mode where you can have inline ajax editing of child pages. This new version adds the ability to hide the child pages from the Page Tree and and also if you want, to hide the Children Tab. This means that clients have no idea that the content is stored in child pages. I know that you can also do this with an external page tree for PageTables, but that hidden "black box" still makes me a little uncomfortable at times, so this is a bit of a best of both worlds. The only catch with the hiding of child pages in the Page Tree is the count of child pages. To make it work I needed to make the core Page::numChildren method hookable. I have asked Ryan if he'd be willing to do that in the core, but for now if you want this feature to work properly, you will need to make this change yourself. Here are some screenshots of the new options and functionality. Two new settings: Note that the About page has no children listed: Child pages are editing within the content tab, but nowhere else because the Children tab is also hidden:
    3 points
  7. Very nice site Tom. Glad ProcessWire ticks all your boxes! Just a minor niggle: I am not too keen on the scrolling/typing text thing...It hurts the eyes after a while and it also seems to be in several places so becomes a bit too much.
    2 points
  8. // Array of segments $input->urlSegments // Url segments string $input->urlSegmentStr()
    2 points
  9. I decided to have a look around and discovered the problem is that the rebuildForPage method is not being called when a new page is added. This fixes it for me (note the addition of !$page->created): } else if(count($changes) || !$page->created) { $this->rebuildForPage($page); }
    2 points
  10. 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
    1 point
  11. This module creates a blank dashboard page in your site admin and sets it as default when you login instead of the page list. It came from a need in a few projects where I was creating modules for various user roles to use and I didn't want them to see the page list at all, but needed to display various stats and quick access buttons. For example, if you have a person who is creating invoices or doing other back-office stuff in various other Process modules then as an admin you wouldn't want them to access the page tree anyway, and there are other scenarios where you might want to have a dashboard instead of launching straight into the page list. It also requires (and adds) a permission - "dashboard" - so you can create new roles and assign the dashboard permission to those roles - something you might want to do fairly commonly if you have a lot of admin modules that you want to restrict access to. Editing the template is simple - there is a dashboard.php template file in the /site/modules/ProcessDashboard/ folder (decided to leave it in there to keep it safe, but I might be tempted to move it into /site/templates/ ) as well as .js and .css files ready to add your code to. You can use the API as you usually would to create your dashboard experience. For example, display data based on user roles or even specific users using code like this: if ($user->hasRole('invoices') { echo "Hi staff member $user->name. View invoices to be processed below: ... ..."; } if ($user->name == 'pete') { // Show some super-awesome stuff here } You can also do away with the dashboard.php template file and edit the module directly, putting your code and output in the execute() function (the way most Process modules are written) but I decided to include the separate template file to make it easier for more people to use. This does touch on areas a few other modules have addressed to some degree (like diogo's Custom Admin Pages) but this is designed for one purpose - instant dashboard creation. You can download the module here: http://modules.processwire.com/modules/process-dashboard/ This module also uses code from diogo's ProcessHomeAdmin module so that the default admin page can be overridden.
    1 point
  12. MarkupCache is a simple module that enables you to cache any individual parts in a template. I'm working on a site now that has 500+ cities in a select pulldown generated from ProcessWire pages. Loading 500+ pages and creating the select options on every pageview isn't terribly efficient, but I didn't want to cache the whole template because it needed to support dynamic parameters in the URL. The solution was to cache just the code that generated the select options. Here's an example: $cache = $modules->get("MarkupCache"); if(!$data = $cache->get("something")) { // ... generate your markup in $data ... $cache->save($data); } echo $data; I left the markup generation code (the part that gets cached) out of the example above to keep it simple. Below is the same example as above, but filled out with code that finds the pages and generates the markup (the part that gets cached): $cache = $modules->get("MarkupCache"); if(!$data = $cache->get("city_options")) { foreach($pages->find("template=city, sort=name") as $city) { $data .= "<option value='{$city->id}'>{$city->title}</option>"; } $cache->save($data); } echo $data; That was an example of a place where this module might be useful, but of course this module can used to cache any snippets of code. By default, it caches the markup for an hour. If you wanted to cache it for a longer or shorter amount of time, you would just specify the number of seconds as a second parameter in the get() call. For example, this would keep a 60-second cache of the data: $cache->get("city_options", 60) I hope to have it posted to GitHub soon and it will be included in the ProcessWire distribution. If anyone wants it now, just let me know and I'll post it here or email it to you.
    1 point
  13. AvbImage - Image Manipulator Module for ProcessWire This module using Intervention Image PHP image handling and manipulation library. Update Status Module and InterventionImage Library update - 10-12-2015 More performance imporements - 18-11-2015 Module Update and Performance Improvements - 17-11-2015 First Commit - 28-10-2015 RequirementsProcessWire >= 2.5.11 PHP >=5.4 Fileinfo Extension Supported Image LibrariesGD Library (>=2.0) Imagick PHP extension (>=6.5.7) For usage and methods please look githup repo : README.md > For issues and fix and corrections please use Githup Repo
    1 point
  14. So far so good. I've just finished a massive data import to a project I'm working on (it will replace the system it's importing from). Had an earlier 2.6 system going and just to be thorough and clean things up, cleared most of its content, exported a profile, Did a fresh install of 2.6.21 with that profile, checked it out a bit and then ran the lengthy import process. It now has 32074 pages and seems fine.
    1 point
  15. A quick look at your source code shows that it is Royal Slider: http://dimsemenov.com/plugins/royal-slider/
    1 point
  16. Just a quick screenshot of the Lister mode in action - note that I have toggled editing on for the first "Story"
    1 point
  17. Great work! I really like your contact form. How does it works? Are you using Form Builder?
    1 point
  18. Exactly like the post quoted: 1) config.php $config->prependTemplateFile = '_init.php'; 2) _init.php require_once("./includes/hooks.php"); 3) hooks.php wire()->addHookBefore('Page::path', function($event) { $page = $event->object; if($page->template == 'articulo-carrera') { $event->replace = true; $event->return = "/$page->name/"; } }); Thanks
    1 point
  19. To: Tom. From: NotWordPress Brilliant! Big, bold and beautiful. It's got the 4 b's. Kinda reminds me of my wife. (she's from Taormina). And it also reminds me of my dog, believe it or not, he's a harlequin Great Dane. (black and white). Maybe you can make this design available to dog lovers like me. (For a fee - of course ... why not?). We can start a website called: NotWordPress, since I have the .com and your design will be the first! Let me know how you feel about this, because it's a brand new idea. Thanks, Louis / NotWordPress PS. I will be looking for 5 guys total - to join my team here at: NotWordPress, in hopes of propelling PW to new heights.
    1 point
  20. Got it! Check it out on http://educacioninicial-puebla.org/ at the very bottom.
    1 point
  21. Thanks Adrian, that worked a treat I just wish I was having such a laugh building the dam(n) site! Once again I have to thank the community for its help. It's much appreciated. Tony.
    1 point
  22. Very cool site indeed - feels really fresh indeed. I do agree with the typing effect. May be better to have the height of those divs fixed so that everything below doesn't move down.
    1 point
  23. This is really awesome! Something to be proud of. I really need a few of your tricks on my current project so digging into the frontend source)
    1 point
  24. I love what you're doing here Adrian! It does raise some concerns, but I'm sure it's not too serious I think the children shouldn't be hidden for superuser, have you thought of that possibility? Would actually be nice if you could choose to which roles they will be hidden.
    1 point
  25. Bernhard - that's a good question. In general hiding pages in the Page Tree can be problematic with child count and pagination, but I don't think this will be a problem for BCE given that when it hides pages it hides all the children of the page (not a select list). That said, this new feature is not well tested yet (which is why it is in the dev branch), but I am implementing it on a live site in the next day or two, so it will get some good testing pretty soon. Give it a go and let me know what you find - I am undecided at the moment if this is a good idea or a bit of a hack, but I really like the way it looks and works!
    1 point
  26. There were some changes made a while back - can't remember if they were just changes to the module, or also the core - I think the core, because there was a limit that prevented it showing more than 10 modules. That looks to be BFD Calendar's issue - not sure if the same for you too. Can you try the latest dev version of PW?
    1 point
  27. You can, but it need some additional scripting. The below could be inside the init() of an autoload module. That would hide the pages you wish for the role my-role. Ps, the code here is not tested. $this->addHookAfter('Page::viewable', function($event) { if (!$this->user->hasRole('my-role')) return; $exclude_ids = array( 1234, 2345, 2323, ); if (in_array($event->object->id, $exclude_ids)) { $event->return = false; } });
    1 point
  28. hi naldrocks98, on the api side image fields are always multi no matter what the settings say! $society->society_logo->removeAll(); // add this line $society->society_logo->add("http://www.thefilipi...ogo/accp.jpg"); $society->save(); explanation by ryan: https://processwire.com/talk/topic/2597-multiple-image-bug-when-using-api-resolved/?p=25452
    1 point
  29. Exactly Ivan I'm looking for the same thing, see my goal is too have different type of admin that they have different access they see some custom page which is inside processwire admin structure now for any custom page you need to make eaither a process or use admincustompage with admin custompage you are ok but you can not have different field for each page and also you can not assign differnt user to just see that page, also for example I made a custom admin page using admincustompage module but I can not remove it from navigation for specific user role.
    1 point
  30. @Sradesign: Those are wonderful examples of what a custom admin theme for PW could look like. I do not think though that Tom should change his theme or incorporate any of it's parts including bootstrap. I am sure if you or me shall spare some time and actually produce the theme, it can under certain circumstances be included in the main PW branch as a third alternative. But it will actually be even simplier for it to just be distributed through modules directory (and it will save us from the need to keep it up to date ). I can see some troubles using bootstrap though as not only the chrome but all input's markup should be rewritten for that purpose. @renobird: I would like to ask your for a favour for PW community to share your knowledge about custom admin theme creating. If you could find some time and produce a little post with a tutorial on this topic it would be incredibly valuable, as Ryan's tutorial on this is rather outdated and probably no longer accurate. Personally, I am even more interested in creating not a complete admin theme replacement, but a theme with a limited functionality for non-superuser site editors.
    1 point
  31. @horst Thank for your answer. I tried your idea but unfortunately it hasn't worked. @Soma I saw that option for the PageTable before, I also set it but i also need this option for the parent template. The users can create dates with the pagetable while they are creating a activity but they can also create dates with the date Lister. Is it really not possible? also not with hooks like mentioned in this thread here: https://processwire.com/talk/topic/10701-automatic-page-name-using-processpageaddexecute-and-pagetable/
    1 point
  32. No I'm talking about the template of admin panel to be something like this: http://lab.westilian.com/westilo-admin/full-width-fluid-layout/index.html or http://themepixels.com/demo/webpage/quirk/templates/index.html
    1 point
  33. @webrocker Thanks for reporting. I'll release an updated version soon...
    1 point
  34. No. Well, not that I recall your honour. Thanks! Edit: An example of what I wanted to do:
    1 point
  35. Have you seen Martijn's great module: http://modules.processwire.com/modules/admin-custom-files/
    1 point
  36. 2.6.1 is the stable version, but 2.7 is due out in about a week, so for a new project I would definitely say go with the dev branch (https://github.com/ryancramerdesign/ProcessWire/tree/dev). Just don't use the devns branch yet - it will be the 3.0 version down the road a little!
    1 point
  37. True enough - it depends on how you are looping through the child pages. Perhaps something like this: foreach($page->children() as $dam) { echo $dam->country->title; }
    1 point
  38. Adrian was just quicker... we probably need more code to help if that snippet doesn't work. Anyways, I always have a good laugh when reading about those dam(n) pages and templates
    1 point
  39. Perhaps: /\h+/ \h+ matches any horizontal whitespace character (equal to [[:blank:]]) Quantifier: + Between one and unlimited times, as many times as possible, giving back as needed [greedy] You can test it at https://regex101.com/
    1 point
  40. Not possible. But you can set automatic page name format on your PageTable field setting under tab input, and not on the parent template family settings. That's only for none or for all templates in the pagetable field. But I guess it doesn't matter.
    1 point
  41. Hi again, I think we found a bug regarding the emailValidation E-mail: The email contains some markup residue which is pulled from the _main.php file (for example some google analytics script code), even if sent as text email. If the vars for the render() func contain $vars['prependFile'] = null; $vars['appendFile'] = null; $vars['allowCache'] = false; this is gone. Is there a way to insert this via hook, or only in FrontendUserRegisterEmailValidation.module, line 97ff…? // Set email template variables $vars = array( 'username' => wire('session')->get('registerUsername'), 'email' => wire('session')->get('registerEmail'), 'token' => wire('session')->get('registerToken'), 'url' => wire('page')->httpUrl . '?registerToken=' . wire('session')->get('registerToken'), 'content' => $this->content, // config variable // ToDo: Tests with php 5.3 // no markup from page template: 'prependFile' => null, 'appendFile' => null // ---- // ); // Load the plain / html email templates $emailContentHtml = wire('page')->render(wire('fu')->getFile('validationEmail.php', 'templates'), $vars); // Send verification email with the generated token $mail = wireMail(); $mail->to($form->fhValue('email'))->subject($subject); if ((int)$this->emailType == 1) { $mail->bodyHTML($emailContentHtml); } else { $emailContentPlain = preg_replace('/^\h+|\h+$/m', '', strip_tags($emailContentHtml)); $mail->body($emailContentPlain); } $mail->send();
    1 point
  42. Hi, I'm trying to override the "Send email validation code" value of the UserRegistration submit button, I need it to be translatable. Since I don't want to hack the module (line 157 of FrontendUserRegisterEmailValidation.module) by putting a _('Send email validation code'), I tried to set the custom value with a $fu->addHookBefore('render',function($event){ $form = wire('fu')->form; if (!wire('session')->get('registerStep')) { $form->fhSubmitBtn->value = __('My custom text',$langfile); } }); but to no avail -- it seems that the module's hook function ( hookRegisterFormBeforeRender ), which also will hook into before render, always trumps "my" value. What am I missing? thx Tom
    1 point
  43. In slick, if you set "autoplaySpeed" to something quite low (10 or so) and "speed" to something quite high (10000 or higher) you should get a nice result. See http://codepen.io/anon/pen/WQJPXr
    1 point
  44. I like and read the blog posts at processwire.com because of all the awesome updates and new features described there. But after some time I'm searching for updates I read and sometimes it's difficult to find the needed blog post again I would prefer continuous documentation updates (api, variables, options, apigen, cheatsheet...) with the new features and the needed PW version. A blog post could point us to the examples / documentation which should have be searchable and maybe tagging system. At the moment there are great examples randomly distributed inside the blog and notably the PW forums.
    1 point
  45. Sorry for all the quick updates, but am using this to populate a huge site and finding new needs so implementing as I go. You can now change the template of each child page in the Edit mode. Because this change happens without warnings, it is controlled by the new "Allow template changes" setting in the module config. Of course the ability to change templates is also additionally controlled by the user's "page-template" permission. Note - you might potentially only want to enable "Allow template changes" while your site is in development and disable once it is live to avoid any disasters. TIP: If you want to change the template for all child pages at once and there are lots of pages, this could still be a little tedious. So instead, use the "Replace" mode, choose the "Child Template" at the top and click Save. This will delete and recreate all child pages with the selected template. This is super fast if the pages don't have any content yet (or child pages of their own), which can often be the case early in development when you are still figuring out which pages will have which templates!
    1 point
  46. There aren't any connections to the admin theme with this module. But installing AdminThemeReno would have cleared the modules cache, so I'm thinking that's most likely what was needed (a modules refresh). It will go into the core once I can add the option of FTP/SFTP/FTPS installation as an option for upgrading/installing modules and core. Your statement is true with Drumlapress, but not with ProcessWire as far as we know. While newer core versions add new security enhancements and such, running an older version of PW doesn't mean your site isn't safe. If a site is running smoothly and does everything the client wants, I tend to leave it alone. Even if upgrades are relatively safe and easy, there's always a rare chance that something will break and need an update as a result of upgrading the PW core or any module. There are plenty of good reasons to upgrade, but since there are no known security vulnerabilities in past versions as of yet, having a safe site is not currently one of them.
    1 point
  47. you can use Markdown or Textile: http://processwire.c...text-formatter/ or, if the only thing you want is the <br> where there is a new line; you can use "nl2br" on a regular text area: http://php.net/manua...ction.nl2br.php <?php echo nl2br($page->field); ?>
    1 point
×
×
  • Create New...