From d9816ef4affa3d7096a2189e9b171d9d130a727e Mon Sep 17 00:00:00 2001 From: vincent-peugnet Date: Fri, 10 Jan 2020 15:28:56 +0100 Subject: new feature : multi edit base working --- app/class/Modelpage.php | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) (limited to 'app/class/Modelpage.php') diff --git a/app/class/Modelpage.php b/app/class/Modelpage.php index 9438c96..3f4dcf4 100644 --- a/app/class/Modelpage.php +++ b/app/class/Modelpage.php @@ -152,11 +152,21 @@ class Modelpage extends Modeldb } } + /** + * Update a page in the database + * + * @todo Check if page already exist before updating ? + * + * @param Page $page The page that is going to be updated + * + * @return bool True if success otherwise, false + * + */ public function update(Page $page) { $pagedata = new Document($page->dry()); $pagedata->setId($page->id()); - $this->repo->store($pagedata); + return $this->repo->store($pagedata); } public function combine(Page $pagea, Page $pageb) @@ -323,4 +333,28 @@ class Modelpage extends Modeldb return $idlist; } + public function pageedit($pageid, $datas, $reset, $addtag) + { + $page = $this->get($pageid); + $page = $this->reset($page, $reset); + $page->hydrate($datas); + $page->addtag($addtag); + $this->update($page); + } + + + public function reset(Page $page, $reset) + { + if($reset['tag']) { + $page->settag([]); + } + if($reset['date']) { + // reset date as now + } + if($reset['datemodif']) { + // reset datemodif as now + } + return $page; + } + } -- cgit v1.2.3