1
0
mirror of https://github.com/processwire/processwire.git synced 2025-08-07 23:38:29 +02:00

Various minor updates

This commit is contained in:
Ryan Cramer
2025-01-10 10:27:09 -05:00
parent 4604c09abc
commit 4e678c1584
5 changed files with 41 additions and 19 deletions

View File

@@ -40,7 +40,7 @@ development branch.
ProcessWire is a timeless tool for web professionals that has always been ProcessWire is a timeless tool for web professionals that has always been
committed to the long term. It started in 2003, gained the name ProcessWire committed to the long term. It started in 2003, gained the name ProcessWire
in 2006, and has been in active development as an open source project since 2010. in 2006, and has been in active development as an open source project since 2010.
Now more than a decade later (2023), were just getting started, as ProcessWire Now more than a decade later (2025), were just getting started, as ProcessWire
continues to grow and develop into the next 10 years and beyond. continues to grow and develop into the next 10 years and beyond.
While ProcessWire has been around for a long time, dont feel bad if you havent While ProcessWire has been around for a long time, dont feel bad if you havent
@@ -71,9 +71,7 @@ in the ProcessWire forums, subscribe to our
[weekly newsletter](https://processwire.com/community/newsletter/subscribe/) [weekly newsletter](https://processwire.com/community/newsletter/subscribe/)
for the latest ProcessWire news, check out our for the latest ProcessWire news, check out our
[website showcase](https://processwire.com/sites/) [website showcase](https://processwire.com/sites/)
to see what others are building with ProcessWire, and read our to see what others are building with ProcessWire.
[blog](https://processwire.com/blog/)
to stay up-to-date with the latest ProcessWire versions.
Weekly ProcessWire news is posted by Teppo Koivula on his site Weekly ProcessWire news is posted by Teppo Koivula on his site
[ProcessWire Weekly](https://weekly.pw). [ProcessWire Weekly](https://weekly.pw).
@@ -129,15 +127,15 @@ replacing your `/wire/` directory with the one from the newer version.
### Pro module version upgrade notes (if applicable) ### Pro module version upgrade notes (if applicable)
- [FormBuilder](https://processwire.com/store/form-builder/) - [FormBuilder](https://processwire.com/store/form-builder/)
version 0.5.3 or newer recommended. version 0.5.5 or newer recommended.
- [ListerPro](https://processwire.com/store/lister-pro/) - [ListerPro](https://processwire.com/store/lister-pro/)
version 1.1.5 or newer recommended. version 1.1.6 or newer recommended.
- [ProFields](https://processwire.com/store/pro-fields/) - [ProFields](https://processwire.com/store/pro-fields/)
the latest versions of all ProFields (10 modules) are recommended. the latest versions of all ProFields (10 modules) are recommended.
- [LoginRegisterPro](https://processwire.com/store/login-register-pro/) - [LoginRegisterPro](https://processwire.com/store/login-register-pro/)
version 7 or newer recommended. version 8 or newer recommended.
- [ProCache](https://processwire.com/store/pro-cache/) - [ProCache](https://processwire.com/store/pro-cache/)
version 4.0.3 or newer recommended. After upgrading, go to your ProCache version 4.0.5 or newer recommended. After upgrading, go to your ProCache
settings in the admin (Setup > ProCache) and see if it suggests any settings in the admin (Setup > ProCache) and see if it suggests any
modifications to your .htaccess file. modifications to your .htaccess file.
@@ -171,14 +169,12 @@ resolved any issues.
* [ProcessWire Support Forums](https://processwire.com/talk/) * [ProcessWire Support Forums](https://processwire.com/talk/)
* [ProcessWire Weekly News](https://weekly.pw/) * [ProcessWire Weekly News](https://weekly.pw/)
* [ProcessWire Blog](https://processwire.com/blog/)
* [Sites running ProcessWire](https://processwire.com/sites/) * [Sites running ProcessWire](https://processwire.com/sites/)
* [Subscribe to ProcessWire Weekly email](https://processwire.com/community/newsletter/subscribe/) * [Subscribe to ProcessWire Weekly email](https://processwire.com/community/newsletter/subscribe/)
* [Submit your site to our directory](https://processwire.com/sites/submit/) * [Submit your site to our directory](https://processwire.com/sites/submit/)
* [Follow @processwire on X-Twitter](http://twitter.com/processwire/)
* [Contact ProcessWire developer](https://processwire.com/contact/) * [Contact ProcessWire developer](https://processwire.com/contact/)
* [Report issue](https://github.com/processwire/processwire-issues/issues) * [Report issue](https://github.com/processwire/processwire-issues/issues)
------ ------
Copyright 2023 by Ryan Cramer / Ryan Cramer Design, LLC Copyright 2025 by Ryan Cramer / Ryan Cramer Design, LLC

View File

@@ -17,7 +17,7 @@
* This file is licensed under the MIT license * This file is licensed under the MIT license
* https://processwire.com/about/license/mit/ * https://processwire.com/about/license/mit/
* *
* ProcessWire 3.x, Copyright 2023 by Ryan Cramer * ProcessWire 3.x, Copyright 2025 by Ryan Cramer
* https://processwire.com * https://processwire.com
* *
*/ */

View File

@@ -12,7 +12,7 @@
* You may also make up your own configuration options by assigning them * You may also make up your own configuration options by assigning them
* in /site/config.php * in /site/config.php
* *
* ProcessWire 3.x, Copyright 2022 by Ryan Cramer * ProcessWire 3.x, Copyright 2025 by Ryan Cramer
* https://processwire.com * https://processwire.com
* *
* *

View File

@@ -5,7 +5,7 @@
* *
* Matches selector strings to pages * Matches selector strings to pages
* *
* ProcessWire 3.x, Copyright 2024 by Ryan Cramer * ProcessWire 3.x, Copyright 2025 by Ryan Cramer
* https://processwire.com * https://processwire.com
* *
* Hookable methods: * Hookable methods:
@@ -1861,6 +1861,14 @@ class PageFinder extends Wire {
$q->bindOption('global', true); // ensures bound value key are globally unique $q->bindOption('global', true); // ensures bound value key are globally unique
$q->bindOption('prefix', 'pf'); // pf=PageFinder $q->bindOption('prefix', 'pf'); // pf=PageFinder
/* @todo To be implemented after 3.0.245
if(strpos($subfields, 'JSON.') === 0) {
if($this->getMatchQueryJSON($q, $tableAlias, $subfields, $selector->operator, $value)) {
continue;
}
}
*/
$q = $fieldtype->getMatchQuery($q, $tableAlias, $subfield, $selector->operator, $value); $q = $fieldtype->getMatchQuery($q, $tableAlias, $subfield, $selector->operator, $value);
$q->copyTo($query, array('select', 'join', 'leftjoin', 'orderby', 'groupby')); $q->copyTo($query, array('select', 'join', 'leftjoin', 'orderby', 'groupby'));
$q->copyBindValuesTo($query); $q->copyBindValuesTo($query);
@@ -1981,6 +1989,22 @@ class PageFinder extends Wire {
return $query; return $query;
} }
/**
* Get match query when data is stored in a JSON DB column (future use)
*
* @param PageFinderDatabaseQuerySelect DatabaseQuerySelect $q
* @param string $tableAlias
* @param string $subfields
* @param string $operator
* @param string|int|array $value
* @return bool
*
*/
protected function getMatchQueryJSON(DatabaseQuerySelect $q, $tableAlias, $subfields, $operator, $value) {
// @todo to be implemented after 3.0.245
return false;
}
/** /**
* Post process a DatabaseQuerySelect for page finder * Post process a DatabaseQuerySelect for page finder
* *

View File

@@ -1174,10 +1174,12 @@ class Sanitizer extends Wire {
*/ */
protected function getPunycodeVersion($version = 0) { protected function getPunycodeVersion($version = 0) {
$config = $this->wire()->config; $config = $this->wire()->config;
if(!$version && strpos($config->pageNameWhitelist, 'v') === 0) { if(!$version) {
// i.e. "v3" specified at beginning of pageNameWhitelist $whitelist = $config->pageNameWhitelist;
$version = substr($config->pageNameWhitelist, 1, 1); for($n = 3; $n > 0; $n--) {
$version = ctype_digit($version) ? (int) $version : 0; if(strpos($whitelist, "v$n") !== false) $version = $n;
if($version) break;
}
} }
if(!$version) $version = $config->installedAfter('2025-01-04') ? 3 : 1; if(!$version) $version = $config->installedAfter('2025-01-04') ? 3 : 1;
if(!function_exists('idn_to_utf8')) $version = 2; if(!function_exists('idn_to_utf8')) $version = 2;