From: <var...@us...> - 2021-08-14 19:35:08
|
Revision: 10520 http://sourceforge.net/p/phpwiki/code/10520 Author: vargenau Date: 2021-08-14 19:35:00 +0000 (Sat, 14 Aug 2021) Log Message: ----------- Remove unused function set_links1 Modified Paths: -------------- trunk/lib/WikiDB/backend/ADODB.php trunk/lib/WikiDB/backend/ADODB_mssqlnative.php Modified: trunk/lib/WikiDB/backend/ADODB.php =================================================================== --- trunk/lib/WikiDB/backend/ADODB.php 2021-08-14 19:33:26 UTC (rev 10519) +++ trunk/lib/WikiDB/backend/ADODB.php 2021-08-14 19:35:00 UTC (rev 10520) @@ -650,91 +650,6 @@ $this->unlock(array('link')); } - /* get all oldlinks in hash => id, relation - check for all new links - */ - function set_links1($pagename, $links) - { - - $dbh = &$this->_dbh; - extract($this->_table_names); - - $this->lock(array('link')); - $pageid = $this->_get_pageid($pagename, true); - - $oldlinks = $dbh->getAssoc("SELECT $link_tbl.linkto as linkto, $link_tbl.relation, page.pagename" - . " FROM $link_tbl" - . " JOIN page ON ($link_tbl.linkto = page.id)" - . " WHERE linkfrom=$pageid"); - /* old new - * X => [1,0 2,0 1,1] X => [1,1 3,0] - * => delete 1,0 2,0 + insert 3,0 - */ - if ($links) { - foreach ($links as $link) { - $linkto = $link['linkto']; - if ($link['relation']) - $relation = $this->_get_pageid($link['relation'], true); - else - $relation = 0; - // avoid duplicates - if (isset($linkseen[$linkto]) and !$relation) { - continue; - } - if (!$relation) { - $linkseen[$linkto] = true; - } - $linkid = $this->_get_pageid($linkto, true); - assert($linkid); - $skip = 0; - // find linkfrom,linkto,relation triple in oldlinks - foreach ($oldlinks as $l) { - if ($relation) { // relation NOT NULL - if ($l['linkto'] == $linkid and $l['relation'] == $relation) { - // found and skip - $skip = 1; - } - } - } - if (!$skip) { - if ($relation) { - $dbh->Execute("INSERT INTO $link_tbl (linkfrom, linkto, relation)" - . " VALUES ($pageid, $linkid, $relation)"); - } else { - $dbh->Execute("INSERT INTO $link_tbl (linkfrom, linkto)" - . " VALUES ($pageid, $linkid)"); - } - } - - if (array_key_exists($linkid, $oldlinks)) { - // This was also in the previous page - unset($oldlinks[$linkid]); - } - } - } - // purge page table: delete all non-referenced pages - // for all previously linked pages... - if (DEBUG and $oldlinks) { - // trigger_error("purge page table: delete all non-referenced pages...", E_USER_NOTICE); - foreach ($oldlinks as $id => $name) { - // ...check if the page is empty and has no version - if ($dbh->getRow("SELECT $page_tbl.id FROM $page_tbl" - . " LEFT JOIN $nonempty_tbl USING (id) " - . " LEFT JOIN $version_tbl USING (id)" - . " WHERE $nonempty_tbl.id is NULL" - . " AND $version_tbl.id is NULL" - . " AND $page_tbl.id=$id") - ) { - trigger_error("delete empty and non-referenced link $name ($id)", E_USER_NOTICE); - $dbh->Execute("DELETE FROM $page_tbl WHERE id=$id"); // this purges the link - $dbh->Execute("DELETE FROM $recent_tbl WHERE id=$id"); // may fail - } - } - } - $this->unlock(array('link')); - return true; - } - /** * Find pages which link to or are linked from a page. * Modified: trunk/lib/WikiDB/backend/ADODB_mssqlnative.php =================================================================== --- trunk/lib/WikiDB/backend/ADODB_mssqlnative.php 2021-08-14 19:33:26 UTC (rev 10519) +++ trunk/lib/WikiDB/backend/ADODB_mssqlnative.php 2021-08-14 19:35:00 UTC (rev 10520) @@ -151,92 +151,4 @@ } $this->unlock(array('link')); } - - /* get all oldlinks in hash => id, relation - check for all new links - */ - function set_links1($pagename, $links) - { - - $dbh = &$this->_dbh; - extract($this->_table_names); - - $this->lock(array('link')); - $pageid = $this->_get_pageid($pagename, true); - - $oldlinks = $dbh->getAssoc("SELECT $link_tbl.linkto as linkto, $link_tbl.relation, page.pagename" - . " FROM $link_tbl" - . " JOIN page ON ($link_tbl.linkto = page.id)" - . " WHERE linkfrom=$pageid"); - /* old new - * X => [1,0 2,0 1,1] X => [1,1 3,0] - * => delete 1,0 2,0 + insert 3,0 - */ - if ($links) { - foreach ($links as $link) { - $linkto = $link['linkto']; - if ($link['relation']) - $relation = $this->_get_pageid($link['relation'], true); - else - $relation = 0; - // avoid duplicates - if (isset($linkseen[$linkto]) and !$relation) { - continue; - } - if (!$relation) { - $linkseen[$linkto] = true; - } - $linkid = $this->_get_pageid($linkto, true); - assert($linkid); - $skip = 0; - // find linkfrom,linkto,relation triple in oldlinks - foreach ($oldlinks as $l) { - if ($relation) { // relation NOT NULL - if ($l['linkto'] == $linkid and $l['relation'] == $relation) { - // found and skip - $skip = 1; - } - } - } - if (!$skip) { - if ($relation) { - $dbh->Execute("INSERT INTO $link_tbl (linkfrom, linkto, relation)" - . " VALUES ($pageid, $linkid, $relation)"); - } else { - $dbh->Execute("INSERT INTO $link_tbl (linkfrom, linkto)" - . " VALUES ($pageid, $linkid)"); - } - } - - if (array_key_exists($linkid, $oldlinks)) { - // This was also in the previous page - unset($oldlinks[$linkid]); - } - } - } - // purge page table: delete all non-referenced pages - // for all previously linked pages... - if (DEBUG and $oldlinks) { - // trigger_error("purge page table: delete all non-referenced pages...", E_USER_NOTICE); - foreach ($oldlinks as $id => $name) { - // ...check if the page is empty and has no version - if ($id != '') { - if ($dbh->getRow("SELECT $page_tbl.id FROM $page_tbl" - . " LEFT JOIN $nonempty_tbl ON ($nonempty_tbl.id = $page_tbl.id)" //'"id" is not a recognized table hints option' - . " LEFT JOIN $version_tbl ON ($version_tbl.id = $page_tbl.id)" //'"id" is not a recognized table hints option' - . " WHERE $nonempty_tbl.id is NULL" - . " AND $version_tbl.id is NULL" - . " AND $page_tbl.id=$id") - ) { - trigger_error("delete empty and non-referenced link $name ($id)", E_USER_NOTICE); - $dbh->Execute("DELETE FROM $page_tbl WHERE id=$id"); // this purges the link - $dbh->Execute("DELETE FROM $recent_tbl WHERE id=$id"); // may fail - } - } - } - } - $this->unlock(array('link')); - return true; - } - } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |