Leaderboard
Popular Content
Showing content with the highest reputation on 02/07/2014 in all areas
-
Yes they are supported now and will continue to be. Though I'm hoping people will convert the themes over to AdminTheme modules. It's easy to do, and provides the benefit of having multiple-admin themes installed at once. When more than one admin theme module is installed, ProcessWire adds an admin-theme selection box to every user's profile screen. To convert an existing admin theme to a module, just move the files into /site/modules/AdminThemeName/ (replacing the Name part with the name of the Admin theme, i.e. AdminThemeTeflon). Then create a new file in the same directory called AdminThemeName.module (again replacing the Name part). All that needs to be in that file is this (I'll continue to use Teflon as the example name): <?php class AdminThemeTeflon extends AdminTheme implements Module { public static function getModuleInfo() { return array( 'title' => 'Teflon Admin Theme', 'version' => 1, 'summary' => "A nice admin theme.", 'autoload' => "template=admin" ); } } Of course, the AdminTheme can go a lot further if you want it to. Examples include: having its own install() method to add new assets it uses (i.e. user profile avatar), adding its own hooks, creating its own API vars, having a custom configuration screen, or anything else you could do with any other module. But all of that can come later... all you need to do to convert an existing admin theme to an AdminTheme module is just to move the files and add the AdminThemeName.module file shown above. I haven't yet had time to look at this one, but it's on my to do list. Thanks for keeping me up to date on it. There's always a long list of issues to cover on GitHub, but we were at a point where all remaining issues were relatively minor, affected very few people, and didn't need to hold up release. I just didn't see any reason for people to keep downloading 2.3 when 2.4 is already more stable. We'll be covering remaining issues, like this one, with incremental versions, working through the list.6 points
-
You can make up your own users system, and sometimes it's the simplest route to achieve something. But I would try to get it done with regular PW users first. You can always map fictional page names to usernames via URL segments. For instance, if you had a template called 'riders' and you enabled 'URL segments' in the 'URLs' tab of your template, then your /site/templates/riders.php file could have code like this: if($input->urlSegment1) { $rider = $users->get("name=$input->urlSegment1"); if(!$rider->id || !$rider->hasRole("rider")) throw new Wire404Exception("Unknown rider"); // display rider echo "<h1>$rider->name</h1>"; echo $rider->body; // ...or whatever fields you wanted to output } else { // display list of riders foreach($users as $rider) { if(!$rider->hasRole("rider")) continue; echo "<li><a href='./$rider->name/'>$rider->name</a></li>"; } }4 points
-
Actually class_exists() should work, but WillyC missed an important part. ProcessWire doesn't include module files that aren't autoload unless some information about them is requested, like $modules->getModuleInfo("className"), or the like. In the same manner, a class_exists("className"); call triggers the autoload mechanism and causes the file to be loaded. But you can prevent that by specifying false as argument 2 to class_exists(): if(!class_exists("ModuleName", false)) { // module is not loaded }3 points
-
Logging in with email address has bee asked before (I think more than once?) and was not granted...can't find the topic now but it was mindplay. Ryan suggested to use a module instead. Mindplay ended up creating a module to do this...I'll search and post here if I find the thread..This is about ADMIN LOGIN. If you are talking frontend, please ignore me ;-) http://processwire.com/talk/topic/1838-login-using-e-mail-rather-than-username-and-general-login-issues/ Related: http://processwire.com/talk/topic/4552-user-names/ Edit: added link to thread + related stuff...2 points
-
Ryan, If Peter went with that approach, what would you recommend he implement in his search.php script to make it possible to find those fictional rider pages? Maybe something like this: $matches = $pages->find("title|body|sidebar~=$q, limit=50"); $rider_matches = $users->find("name~=$q, limit=50"); $matches->append($rider_matches); foreach($matches as $m) { if($m->template == 'riders'){ $out .= "<li><p><a href='/riders/$m->name/'>{$m->name}</a></p></li>"; } else{ $out .= "<li><p><a href='{$m->url}'>{$m->title}</a><br />{$m->summary}</p></li>"; } }2 points
-
Just stumbled upon this: One-click App Deployment with Server-side Git Hooks.2 points
-
A error message about a class being redeclared means that you have, in this case, two modules with the SAME CLASS name running. Renaming the module alone won't do the trick. You need to open the .module file and rename the class there, e..g MyCustomMarkupSitemapXML. A .module file is just a php file.2 points
-
When I need a calculated field that will be used for sorting, I like to add a hidden (or regular, doesn't matter) field to the template to store the calculated value. The value gets automatically calculated on page save. A hook like this in your /site/templates/admin.php can do the work for you: $pages->addHook('saveReady', function($event) { $pages = $event->object; $page = $event->arguments(0); if($page->template == 'rider') { $miles = 0; foreach($page->rides as $ride) { $miles += $ride->miles; } $page->miles_ridden = $miles; } }); Then when it comes to sorting, you just sort on your calculated field: miles_ridden. If you are adding this to an existing PW installation, then you'd need to establish the initial values for each rider's miles_ridden. This could be done with a quick bootstrapped script: /setup-riders.php <pre><?php include("./index.php"); foreach(wire("pages")->find("template=rider") as $rider) { $rider->save(); echo "$rider->name: $rider->miles_ridden miles ridden\n"; } Then you'd just load domain.com/setup-riders.php in your web browser, and then delete the file when done.2 points
-
Okay, About time I put the lyrics down - you have to appreciate that I ad-libbed the entire thing at the time, playing the piano at the same time. Now are you wired? Soma's got the code, gonna make it right He's gonna program all damn night Diogo's got php on his mind Got stuck in a loop, he's in a bit of a bind Pete keeps panicking! His forum just broke He hopes all the others Just think its a joke They're all at Processwire They're living the Processwire Dream I've got it wired Processwire... Ryan is watching He knows that its true ProcessWire can kill the blues Its so real, it feels good! Processwire underneath the hood...2 points
-
Hmmm, You could easily do this with a very simple module, no? E.g. make use of Soma's latest jQuery Data Tables helper class (with Ajax goodness, etc) or PW inbuilt MarkupAdminDataTable. I'll post a link to a short demo video here and some code in Github to show you how simple this can be accomplished..... Edit: added video demo code: Will upload soon....it is very rough code, a proof-of-concept... ;-) As you can see from the video, a couple of things could be improved! Uploaded here The code here is so trivial it shouldn't even be upped to Github. However, I hope this helps to show newbies that PW is dead-easy!..even for PHP newbies like me! Pete, sorry to hijack your thread2 points
-
1 point
-
Update 09.05.2014: new version of minimize.pw released. I've updated this post and you can read more here. ProcessImageMinimize A service and module to make images lightweight: minimize.pw Our new commercial service for ProcessWire: minimize.pw With minimize.pw, you can shrink your images (JPG and PNG) without noticeable visible differences up to 80%. This makes pages load faster and helps you to work with people not familiar with command line image compression. You can try it for free. Learn more Download the module Github Page Module features Hooks into any Pageimage with ->minimize() (short ->mz() ) Automatic compression with a 1-click-setup (new) Overwrites original files or keeps both versions (new) Image compression with minimize.pw Fail-safe mode so that your visitors won't notice any problems if we're offline or you have no volume left. Usage with templates First, download and install the module. You have to enter a license key. Get a free license key hereTo embed a minimized image into your web page, simply call the method mz() or minimize() on your Pageimage-object. Please note, that is has to be a single Pageimage. We also support apeisa Thumbnails module. $img = $page->image; $img->minimize(); Or put in context $img = $page->image; echo "<img alt='A minimized image' src='{$img->minimize()->url}'>"; You can also use it combined with other Pageimage methods: $image->size(300,400)->mz()->url; Read more at Github Pricing While the module is free, our service is fee-based. We have to pay for servers and traffic With this version we've dropped our year-based pricing structure and introduce a new volume-based pricing. Everyone gets 2000 images for free and you can buy additional volume anytime. Free: 1000 images once 5000 images / 19€ 15000 images / 39€ 50000 images / 89€ Buying more volume will also drop the site limit of three. Questions Feel free to ask any question you might have.1 point
-
Hi folks! tonight i searched a tool for create an UML directly from the source code of PW. The result is a 9MB of PNG Enjoy it http://zoom.it/hT0q1 point
-
Please consider this a formal request and/or a question about why we are not allowed to use spaces in passwords in the admin. Doesn't adding a few spaces to a password or passphrase significantly increases its security? Even the horrible example "This is my password." is much more secure than most passwords people pick for themselves (Possible Combinations: 10,596,610,576,391,421,000,000,000,000,000,000,000), more secure than the same characters sans-spaces, and likely easier and more natural to type. Personally, I'd rather have a length requirement than be forced to use a digit and no spaces. Everyone has their own methods I suppose, so I was wondering if someone could shed some light on this?1 point
-
I have 400+ users, and have done essentially what Ryan suggested above. It works quite well, and allows you to continue using all the build-in things related to users.1 point
-
1 point
-
Why remove? Why not just hook before and do what you need to do? Also I think you could leave it not required and add that via js or css. Also you could try hook before on inputfieldText directly. BTW your if() adds a error.1 point
-
2.4 has been out for a couple days now as the current stable version, so you don't even have to use dev if you don't want to.1 point
-
How about this: for($size = 4, $n = 0; $n < count($images); $n += $size) { foreach($images->slice($n, $size) as $img) { echo $img->url; } }1 point
-
For use cases I'm thinking of right now, I think images, text and videos would be enough for now. If you have a module that allows you to tie these to fields in a specific template, then when you create a new page replace the normal editor with Sir Trevor, you could have it use the native fields and store the parsed content in a hidden body field. So your images go in a multiple images field, your video URLs in a custom field (repeaters don't scale infinitely) and text some other way and the whole thing is parsed into a body field ready to render.1 point
-
Kongondo, great video and module! I hope you'll add this one to the modules directory when ready. Also for those above, wanted to mention that Teppo's Changelog module is also a good way to look at what's been edited recently. In terms of having a list of "recent edits" display in the default admin theme, that kind of goes against the desire to keep the admin theme as minimal as possible. I don't disagree on the usefulness of it, just think it doesn't belong in the default admin theme. I'd rather leave that to other admin themes, or support such features in the future with theme-specific 3rd party installable modules or widgets (this could be fun).1 point
-
I'm unclear about why you are using Hanna code for this. I might not be understanding the question, but it sounds like something that maybe you should just be using pages for. For instance, you could have a page called /tools/rental-prices/, and output that: echo $pages->get('/tools/rental-prices/')->body; If you had various different options for rental prices, then you could create a 'page reference' field called rental_prices, and make it select from one of the many pages living under /tools/rental-prices/, like /tools/rental-prices/summer/ and what not. Then you'd output it like this: echo $page->rental_prices->body;1 point
-
Glad you sorted it. One thing I love about PHP is that it gives you very useful, meaningful feedback/error messages...unlike Windows which would say something along the lines "Something went wrong...and we've had to shut down the system" - bang BSOD!...I digress; I love my W7....1 point
-
Joe, to re-create PW's javascript 'config' variable on your front end, you could just duplicate what's being output by this function. There's not much to it. To ensure that all the right JS and CSS files get loaded you only need to do this: foreach(wire('config')->styles as $url) echo "<link rel='stylesheet' type='text/css' href='$url' />"; foreach(wire('config')->scripts as $url) echo "<script src='$url'></script>"; Also for anyone else reading, this has nothing to do with CKEditor. This is just generally how you'd duplicate PW's admin vars/styles/scripts on the front end.1 point
-
Hi! Hopefully I understood what you're trying to archieve. <?php // On rider template $rides = $pages->find("template=ride,rider={$page->id}"); ?>1 point
-
This is one that we can feasibly get working without too much trouble, if there's a need for it. One way you could do it is to change your "name" selector to a path selector: $p = $pages->find($page->parent->path . "namefor_german"); Thanks! I was trying to do something similar to manage language-friendly permalinks to news articles: $article_page = $pages->get('/site-articles')->child("categories.name=news, post_date>=$start_date, post_date<=$end_date, name{$user->language}|name=$input->urlSegment2"); Replaced it by: $candidate_pages = $pages->find($pages->get('/site-articles')->path . $input->urlSegment2); $article_page = $candidate_pages->get("categories.name=news, post_date>=$start_date, post_date<=$end_date"); And now it works. BTW, I'm in the (almost finished) process of porting an existing site to ProcessWire and the multi-language support in pw is just fantastic!1 point
-
Why do you not ftp-upload the archive and bootstrap PW? You write a script (php-file) e.g. named "pw-archive-import.php" and put it in the root of your webpage (where you have pw index.php). I use this very often like that, (with some security in it): <?php // define userroles that are allowed to work with this script, like: superuser|editor|author $userRolesSelector = 'superuser'; // bootstrap PW require_once(dirname(__FILE__) . '/index.php'); // check user-account if( ! wire('user')->hasRole($userRolesSelector)) { header('HTTP/1.1 403 Forbidden'); exit(1); } WIth this example you first have to login into PW as a superuser and than call the URL to the importer-script with your browser to lets having fun. Than you can hardcode the path to your archive-data-file or pass it via a Getvar to the script, read / prepare the data and start to create and/or fill pages: // get your file, read it into an array $archiveData and start to import it: // here some (pseudo/example)code set_time_limit( intval(60 * 10) ); // give it 10 minutes, you may also increase this echo "<pre>\n"; foreach($archiveData as $data) { // check if a page with that id/title already exists $page = wire('pages')->get($data['your-page-uid']); if(0<$page->id) { // this page exist already, if we only want to import new pages, we skip echo "- page already exists: {$page->id}\n"; continue; } // we have to create a new page echo "+ create new page for {$data['your-page-uid']}\n"; $page = new Page(); $page->template = 'your-template-name-here'; $page->parent = wire('pages')->get(' ... your selector to match the parent-page of the new pages you create here ... '); // ->get only returns a single page, (->find returns a page-array) $page->title = $data['title']; // add all data to the fields you have to // don't forget to validate and/or sanitize the data if not have done already! .... // save the page $page->save(); // and optionally unload from memory wire('pages')->uncache($page); } Here are some links to bootstrap scripts / posts: http://processwire.com/talk/topic/4905-does-this-image-import-pseudocode-look-ok/ http://processwire.com/talk/topic/4437-delete-orphaned-filesimages-from-siteassetsfiles/#entry436871 point
-
Writing this quickly, have to run...there could be errors... I don't know what you mean by an included image but here goes: If talking about RTE (e.g. TinyMCE), yes you can include images from other pages... If you are talking about images inserted in pages via image fields, yes, you can grab this and output them in other template files. Just remember: $page will give you access to everything about the current page. If you want to get this page's images, oh well, see link below...;-) $pages will give you access to everything about other pages.. So, if you want images inserted in other pages, you will use $pages to get to them. How you get to other pages using $pages vary - you can get there by path, ID, name, etc...choose the selector that suits you. In some cases, people prefer getting there by ID in case they need to be very sure (since ID does not change). In other cases, people prefer getting other pages by their title since it makes for better human-readable code. http://processwire.com/api/variables/pages/ Also to remember. Sometimes people grab images from a multiple image field and try to echo them out and nothing happens. Point is? multiple image fields will return an array so you would need to loop through them using foreach or similar. Otherwise, for a single image field, you can just echo the image out. Now this may be misleading, you can specifically grab only one image from a multiple image field. In that case, there is no array, so just echo out what you want. I am not sure about best practice. I can't recall anyone here grabbing an image by its id. Pages, yes, but images can be tricky remembering ids. It is more common to grab images (all), or by their index in the array, eq(0), etc. A good practice though is to check if there are images before trying to output them (i.e. using "if"). This saves outputting blank HTML tags, getting PHP errors and sometimes is a good cure for headaches - why isn't my image showing?!? OK, enough theory. For some code, have a read in the docs about images; no need for me to reinvent the wheel: http://processwire.com/api/fieldtypes/images/. It also include image properties e.g. $image->filename. One more thing, at times, something some people forget; as with other fields, grab the images on a page using the name of the image field! People have been known to copy paste code and wonder why $pages->get("selector")->images doesn't work. For the "images", you need to use the image field's name . See also the cheatsheet: http://cheatsheet.processwire.com/ For more complicated scenarios, Google this forum. Some wonderful examples come up1 point
-
@dragan: if you're literally using var_dump(), it should be noted that it doesn't return anything. In order to store it's value in a variable you'd need to use output buffering or some other trick. Another option is to use print_r() with return param set to true. Main difference between var_dump() and print_r() is that var_dump() provides more information about the data types involved, while print_r() only outputs content. Edit: you should also take a look at this comparison between var_dump(), print_r() and var_export().1 point
-
Some major additions today! Added the ability to specify the dimensions of the rasterized version that is added to the admin images field. See the tiger screenshot in the first post in this thread to see how the SVG which was scaled to 25 x 25px before uploading, resizes up to a 500 x 500px fully transparent PNG. You can go as large as you want with no loss in quality. More importantly, I added a new method: rasterize() for the front-end which can be called from your templates with or without dimensions for resizing. $image->rasterize(200,0)->url This method optionally resizes the vector version of the image before it rasterizes it, so you can scale it infinitely and there will be no loss of quality. Make sure you point it to the svg version in your images field. These versions are stored using the filename.200x0.png format, so they will be automatically removed by PW if you delete the original image from the admin. I think this will be really useful - you can now upload one SVG and use the rasterize method to generate whatever sizes you need throughout your site - I can see this being especially useful for icons/logos. Also for scaling drawings/illustrations/charts/maps for different screen dimensions (RWD techniques) without the usual artifacts that result from scaling these style of images. New version available from the modules directory. Please let me know how it works out for you!1 point
-
@Joss, I have enjoyed myself today working with your Foundation 5 profile. I have learned some new things and now I have been exposed to better ways of creating my websites. Thanks. The link to ProcessWire in the footer.inc file has a slight error. "htp://www.processwire.com" should be "http://www.processwire.com".1 point
-
Will "old" admin themes be supported also in future versions? I'm using a customized version of Soma's great teflon 2 admin theme for a project. After upgrading to the newest dev version, I could uninstall the new Admin theme and so far the Teflon seems to work without problems. I love Pw!1 point
-
Ok, I have added support for rendering the video in a Sublime Video player with: echo $page->video_field->eq(0)->play; Just register at sublime and enter your token on the config settings page of this module and that's it. I am not sure I am convinced about Sublime at the moment. I like the idea of a CDN approach to including the required file, but you can get mediaelementjs and other libraries through services like: http://www.jsdelivr.com/#!mediaelement Admittedly there is a lot more to include this way though. I think the main thing that puts me off about Sublime is how the process they take you through is designed to set up each video separately. Certainly you can just get the token for your domain and forget about the rest, but I would like it to be simpler. I have pushed this version to github, although I think maybe I should have made a separate branch - oh well. I am contemplating the idea of supporting several different players. Any thoughts on this, or how this new version of the module works?1 point
-
From someone who hasn't really used either yet but is contemplating it (need to see what all the fuss is about), this is a decent article: https://medium.com/frontend-and-beyond/8b3812c7007c1 point
-
MySQL clients work fine with remote MySQL servers so it is possible to have the two on different machines: it will work. What isn't so obvious is the way that MySQL handles DB replication and failover for high availability (which it sounds like you might want to do.) It's not a simple subject so I'll not go into it here but seeing as you aren't afraid to do your research, I'd recommend taking a look at "High Performance MySQL" (at least the 3rd edition) which really covers replication as well as performance. I think you'll find that the new edition (I've only got the second) also touches on sharding for load balancing - something that you might have to do manually in MySQL unlike some other high availability DBs.) If any of the data you are going to be storing involves financial transactions (say placing orders) then I'd also recommend looking at storing it in InnoDB tables rather than (what was) PWs default MyISAM tables. It is possible to get PW running on InnoDB tables in MySQL, I've done it myself though I haven't posted a how-to about it yet.1 point
-
Hi Pierre, Welcome to the forums. Actually, lots of us have been using 2.4 for a while now..But that is now history, 2.4 is now in RC status! A newsletter went out late last week to this effect. An official announcement is soon to follow. You are good to go! Edit I forgot to respond to the issue about upgrade. Nothing breaks upgrading 2.3 to 2.4, at least not in the core. And I haven't heard of any of the custom modules breaking either...1 point
-
Sorry, the login page has its own page... I was too quickly! Please change the other value back to '10'. The page we want has pages_id=23. The right Process has ID=10 So this should work: 1) Make a backup of current DB! 2) In table pages: Entry with id=23 must have templates_id=2 3) In table field_process: Add new entry => pages_id=23, data=101 point
-
Hi Melissa, $channel = $pages->get("/blog/"); $entries = $channel->children("blog_date>=$startTime, blog_date<$endTime"); // or substitute your own date field If I understand your question right, the problem is that you are searching for blog-posts only for children of the /blog/ page. Try to search side-wide with with your blog template: $entries = $pages->find("template=blog,blog_date>=$startTime,blog_date<$endTime");1 point
-
Just as a sidenote regarding clients uploading tremendous large images: Also wanted to mention that you can set a max image dimension in the image field input settings. This allows to for xample say 1280 x 1280 is max and any image uploaded that exceeds the max with or height gets resized to 1280. This is one of the best settings cause it helps keeping images in a reasonable size when uploaded. If you combine it with the ImageMinSize module you could even have a min size.1 point
-
Pageimages suggests you have a image array and try to call heigth which of course doesnt work. I'm not sure this ever changed and was always like this. So I think you have some code that worked beacuse it was an single image.1 point
-
Hi everyone, I'm in my first week of ProcessWire and loving it! I've next to no php experience but I'm figuring things out thanks to all your help on this forum. It took me about 5 attempts to understand this process but now I get it. What a clever way of doing this. It makes it so simple for the user to edit as well which is great. Thanks folks.1 point
-
screenshots 1. just before the end of the contest (from google's cache) 2. After the contest1 point
-
There are a few different ways to do this, including htaccess rewrites, but this code from willyc is a good option: http://processwire.com/talk/topic/1799-routes-and-rewriting-urls/ A few other posts worth reading: http://processwire.com/talk/topic/4847-redirect-in-htaccess/ http://processwire.com/talk/topic/3275-hide-parent-page-from-url/ http://processwire.com/talk/topic/4521-how-to-customize-urls/1 point
-
Hi I did something similar with radius here: http://alltpaoland.com/platser/monument-over-kronans-forlisning/naraplatskarta by using this https://github.com/mjaschen/phpgeo1 point
-
There you go. Pushed a new version to GitHub and updated modules directory + opening post accordingly. Changed the name to Admin Save Actions (though the damage has been done). Don't know how this affects those trying to update the module via ModulesManager - probably you need to remove and reinstall the module, sorry for that. Added "edit next sibling page" as described in some of the earlier posts. Basically does what Kongondo's version does too - a bit different route though. There's also a config option to set a safety net for this: option will not be show if there are more siblings (defaults to 100). Option is not shown also when there is no next sibling available (root page or last visible and published page under this parent). @Martijn: I didn't go for hidden/unpublished pages at this time. But I'm thinking of modifying this a bit so that when the edited page is hidden/unpublished also siblings are searched with "include=all". Do you think that would be logical?1 point
-
I'm looking for a freelancer to help me develop a calculator feature for a website. The calculator is a financial calculator based on a working Excel spreadsheet and uses simple math, yet contains more fields than a typical mortgage calculator or similar. It is not a full-fledged calculator but works more like an interactive worksheet. Please email me if you are interested: marc *a t* marccarson.com. Please let me know about any similar work you've done (or send your development portfolio website) and I'll send you the Excel spreadsheet to get a cost estimate. The build timeline would be about 2-3 weeks, beginning about one or two weeks from today. The client has also requested that the calculator have a download-me / work-offline feature (loosely defined at the moment), and I will rely on you to suggest ways that could work so that we can communicate with the client about it early in the process. Additionally if you are a heavy ProcessWire user I am interested in exploring ways we can work together on future projects involving front-end communication with a PW back-end. Thanks!1 point
-
Tested out here and works very well, good results, and was easy to implement. Nice work Philipp!1 point
-
First question would be why not just link to the page rather than the image in the first place? But thinking on it more, I'm betting you are inserting these from TinyMCE/CKEditor? Something like this might work: function replaceImagesWithPages($str) { $rx = '{href="' . wire('config')->urls->root . 'site/assets/files/(\d+)/.+?"}i'; if(!preg_match_all($rx, $str, $matches)) return $str; foreach($matches[1] as $key => $id) { $page = wire('pages')->get((int) $id); if($page->viewable()) { $str = str_replace($matches[0][$key], "href='$page->url'", $str); } } return $str; } echo replaceImagesWithPages($page->body); This type of thing could be bundled into your own Textformatter module for easy re-usability (let me know if I can elaborate). Note that this was written in the browser and not actually tested, so may likely need adjustments.1 point
-
After having a problem with floats, we found out that all the PHP float and number function aren't locale save and compatible. We have a language support installed and the german locale is set via the language pack, after that the float fields stop working correctly. After removing the locale they work again. It's simply that the locale puts the float like "9,13" and not "9.13" and it fails. It would require some more workarounds as there is now to make it work or just leave out the locale setting when using languages, which is kinda annoying not able to use it.1 point
-
Hi Roope Always use: $selectorString = $sanitizer->selectorValue($stringWithCommas); Pw sanitizes the selector string e.g. quotes it when there are commas present.1 point