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

61 Commits

Author SHA1 Message Date
Ryan Cramer
8b5d96f1b6 Fix issue processwire/processwire-issues#2035 plus some related additions to help identify and fix pages that might incorrectly have trash status 2025-02-05 14:45:05 -05:00
Ryan Cramer
1c5f2f7e3c Updates for PHP 8.4 support per processwire/processwire-issues#2000 Also note that these changes require we adjust our minimum required PHP version from 7.0 up to 7.1, with PHP 8.x still recommended. 2024-11-29 13:29:28 -05:00
Ryan Cramer
0ef8a4de0b Add new $pages->saveFields([ 'field1', 'field2', 'etc.' ]); method that enables you to save multiple fields on a page. Previously you could only save the entire page, or 1 field at a time. 2024-10-11 16:13:36 -04:00
Ryan Cramer
137b2aa50b Accidentally added some unused code in the last commit so this one removes it. 2024-07-30 11:21:51 -04:00
Ryan Cramer
19fb83201d Update PagesEditor::delete() method to track already-deleted pages to prevent duplicate calls from nested repeaters and such. 2024-07-30 11:20:16 -04:00
Ryan Cramer
acc7ca2d91 Minor fix to PagesEditor::saveStatus() method 2024-07-05 15:49:14 -04:00
Ryan Cramer
8a1f706be9 Add new $pages moveReady(), restoreReady(), and renameReady() hooks. Add option for callback hook on $pages->save(). Improvements to PagesTrash class. Update $pages class so restored() hook does not ever need to be called manually, and update ProcessPageEdit to reflect that. 2024-01-12 11:49:51 -05:00
Ryan Cramer
c62deb7946 Minor fix in PagesEditor class 2023-12-15 13:33:11 -05:00
Ryan Cramer
b0414278f8 Update PagesEditor to throw descriptive exception when attempting to save a NullPage. This is to fix what were previously ambiguous error messages. 2023-09-15 08:22:09 -04:00
Ryan Cramer
19be4b3b90 Fix issue processwire/processwire-issues#1771 2023-06-29 13:56:55 -04:00
Ryan Cramer
f4a05789f1 Attempt fix for issue #1714, plus a couple other minor unrelated class code improvements that were already in the queue 2023-04-07 09:34:18 -04:00
Ryan Cramer
371ea35036 Fix issue processwire/processwire-issues#1711 2023-03-30 08:46:17 -04:00
Ryan Cramer
b74f6ca359 Attempt fix for processwire/processwire-issues#1459 and processwire/processwire-issues#1297 by rewriting code that builds pages_parents table and requires fewer changes to the table. This is called on page parent changes and clone operations. Needs further testing on installation with 1+ million pages to compare with previous and confirm performance improvement while maintaining same accuracy. 2023-02-02 13:54:51 -05:00
Ryan Cramer
9f39514376 Attempt fix for processwire/processwire-issues#1610 2022-11-10 10:40:53 -05:00
Ryan Cramer
8748c72696 Minor code and phpdoc improvements to various core classes 2022-09-16 13:14:54 -04:00
Ryan Cramer
79cfdd5f38 Minor adjustments in PagesEditor class 2022-08-19 15:00:07 -04:00
Ryan Cramer
fab59a5f4b Fix issue processwire/processwire-issues#1533 2022-02-25 08:37:00 -05:00
Ryan Cramer
1eb156f1aa Fix issue processwire/processwire-issues#1535 2022-02-24 12:09:54 -05:00
Ryan Cramer
25da592578 Additional updates for processwire/processwire-issues#1467 2022-01-24 11:07:10 -05:00
Ryan Cramer
fc0db2bb22 Fix issue processwire/processwire-issues#1495 2022-01-07 12:58:53 -05:00
Ryan Cramer
3c983f9b51 Fix issue where adding a new page was broken by commit b47297fd4a 2021-12-28 09:03:59 -05:00
Ryan Cramer
f4592435aa Add a $pages->new() API method which is similar to $pages->add() in that it creates a new page in the DB, except that the new() method accepts a selector string (or array) rather than the specific arugments if the add() method The new() method can also figure out the appropriate template or parent on its own (if available in family settings). This commit also updates the existing $pages->newPage() method (which creates a new page in memory only) to also accept the same selector string/array as the new() method. These updates are thoroughly phpdoc'd with the methods. 2021-12-10 10:39:26 -05:00
Ryan Cramer
43347472f3 Update the $pages->add() method to pull a fresh copy of the $page from the database after it has been added. This helps with some API usages where returned $page may have not been fully initialized in some cases. 2021-11-19 10:24:54 -05:00
Ryan Cramer
031ff59852 Add a PagesEditor::clear() method for clearing a page's data, plus add a PagesEditor::replace() method for replacing one page with another, but it is currently a work in progress (not yet in public API) 2021-11-05 13:34:17 -04:00
Ryan Cramer
29c58f836b Minor updates/improvements to PagesEditor class, plus add 'user' option for $pages->touch() method 2021-08-05 08:44:23 -04:00
Ryan Cramer
2362005e78 Update $sanitizer->removeMB4() method to use a default replacement character (can be set in $options). Plus implement a shorter replacement function (version 2). Also some updates to the $sanitizer->validateFile() method. 2020-11-25 14:12:33 -05:00
Ryan Cramer
6a1b6a21ae Add new hooks: Pages::trashReady(), Pages::deleteBranchReady(), Pages::deletedBranch(). The deleteBranch hooks cover the case of recursive deletions where an entire branch of pages is deleted. For those cases, these hooks can be more useful than the regular deleteReady() and deleted() hooks because those two are called for every single page, rather than just for the initiating page. 2020-07-17 14:43:33 -04:00
Ryan Cramer
fd2a06d4b2 Continued updates to new PagesParents class and update PagesEditor to use it 2020-05-14 12:05:30 -04:00
Ryan Cramer
273183ddfb Add support for custom Page classes 2020-03-06 14:13:22 -05:00
Ryan Cramer
92ef3bbbc3 Update RepeaterPage class for secondary detection of 'forField' when page exists in unexpected location 2020-01-31 11:19:55 -05:00
Ryan Cramer
11ed423bca Fix issue processwire/processwire-issues#1061 2020-01-13 14:24:44 -05:00
Ryan Cramer
346218a524 Various minor updates 2019-12-03 08:40:08 -05:00
Ryan Cramer
fd89b7cebd Bump version to 3.0.146 2019-11-22 14:12:51 -05:00
Ryan Cramer
7a41ffb089 Update $pages->touch() method to support specifying date type to update 'modified', 'created' or 'published'. Add $pages->editor()->addStatus(), removeStatus() and saveStatus() methods as simpler alternatives to the existing savePageStatus() 2019-11-15 14:40:57 -05:00
Ryan Cramer
a2fb255de0 Fix issue processwire/processwire-issues#927 use current created user for cloned pages rather than original created user 2019-09-24 09:34:08 -04:00
Ryan Cramer
3024314680 Fix issue processwire/processwire-issues#905 2019-06-25 11:16:43 -04:00
Ryan Cramer
204335e2d3 Add support for $page->meta() method for maintaining persistent meta data for pages independent of fields and the normal load/save process. 2019-06-07 12:17:27 -04:00
Ryan Cramer
711b6b8f3d Add additional check to make sure one isn't deleting the page being viewed per processwire/processwire-issues#356 2019-04-05 11:03:31 -04:00
Ryan Cramer
b158b71c42 Update per processwire/processwire-issues#648 2019-03-04 10:10:58 -05:00
Ryan Cramer
2f908e44e7 Add support for previously unimplemented status Page::statusUnique, which adds support for globally unique page names. This commit also changes the the previous commit Page::statusIncomplete to value 128 because it turns out 256 was used in a 3rd party module and it seemed safer to use 128, which was occuped by Page::statusVersions, which has never been used. I've also changed the name of Page::statusIncomplete to Page::statusFlagged since the status indicates an error occurred during last interactive save rather than specifically incomplete. 2019-02-27 11:55:08 -05:00
Ryan Cramer
02f9220529 Some minor 1-line tweaks to various files 2019-01-25 11:32:47 -05:00
Ryan Cramer
6d1b558d85 Fix issue processwire/processwire-issues#723 2018-12-12 14:28:24 -05:00
Ryan Cramer
32f594de2a Update Pages Export/Import class to support export/import of page created and modified dates 2018-11-09 14:25:34 -05:00
Ryan Cramer
0ec70c875f Update PagesEditor::savePageStatus() method to also accept array of page IDs (rather than just 1 page ID). Also accepts Page or PageArray objects now too. 2018-10-03 11:45:07 -04:00
Ryan Cramer
89caff1bdc Fix issue processwire/processwire-issues#697 pages with $template->noMove setting could not be restored/moved out of the trash 2018-09-13 12:11:43 -04:00
Ryan Cramer
84e5fd6b51 Fix issue processwire/processwire-issues#690 where isMoveable() error messages were not yet multi-language translatable 2018-09-13 10:33:40 -04:00
Ryan Cramer
844946b706 Fix issue processwire/processwire-issues#681 where Fieldtype exceptions getting caught when saving page, which could interfere with InnoDB transactions when Fieldtype throws an Exception 2018-09-13 08:29:49 -04:00
Ryan Cramer
4c48e1d941 Refactoring in ProcessPageClone.module and related hooks and multi-language support, plus some improvements to new PagesNames class. 2018-08-30 06:22:02 -04:00
Ryan Cramer
dfa8cc7b74 Refactoring of the PagesEditor class, primarily addition of a new PagesNames class for handling page names, duplicate names, untitled pages, incrementing page names, etc. 2018-08-23 10:30:12 -04:00
Ryan Cramer
027275ec40 Fix issue processwire/processwire-issues#583 $pages->clone() was failing when page had files and output formatting state was true. 2018-05-02 05:53:26 -04:00