add method SeedDMS_Core_KeywordCategory::countKeywordLists()

This commit is contained in:
Uwe Steinmann 2023-01-10 08:10:33 +01:00
parent 330a147533
commit 1d217251c1

View File

@ -8,7 +8,7 @@
* @version @version@ * @version @version@
* @author Uwe Steinmann <uwe@steinmann.cx> * @author Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2002-2005 Markus Westphal, 2006-2008 Malcolm Cowe, * @copyright Copyright (C) 2002-2005 Markus Westphal, 2006-2008 Malcolm Cowe,
* 2010 Uwe Steinmann * 2010-2023 Uwe Steinmann
* @version Release: @package_version@ * @version Release: @package_version@
*/ */
@ -19,7 +19,7 @@
* @package SeedDMS_Core * @package SeedDMS_Core
* @author Markus Westphal, Malcolm Cowe, Uwe Steinmann <uwe@steinmann.cx> * @author Markus Westphal, Malcolm Cowe, Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2002-2005 Markus Westphal, 2006-2008 Malcolm Cowe, * @copyright Copyright (C) 2002-2005 Markus Westphal, 2006-2008 Malcolm Cowe,
* 2010 Uwe Steinmann * 2010-2023 Uwe Steinmann
* @version Release: @package_version@ * @version Release: @package_version@
*/ */
class SeedDMS_Core_KeywordCategory { class SeedDMS_Core_KeywordCategory {
@ -47,53 +47,53 @@ class SeedDMS_Core_KeywordCategory {
*/ */
protected $_dms; protected $_dms;
/** /**
* SeedDMS_Core_KeywordCategory constructor. * SeedDMS_Core_KeywordCategory constructor.
* @param $id * @param $id
* @param $ownerID * @param $ownerID
* @param $name * @param $name
*/ */
function __construct($id, $ownerID, $name) { function __construct($id, $ownerID, $name) { /* {{{ */
$this->_id = $id; $this->_id = $id;
$this->_name = $name; $this->_name = $name;
$this->_ownerID = $ownerID; $this->_ownerID = $ownerID;
$this->_dms = null; $this->_dms = null;
} } /* }}} */
/** /**
* @param SeedDMS_Core_DMS $dms * @param SeedDMS_Core_DMS $dms
*/ */
function setDMS($dms) { function setDMS($dms) { /* {{{ */
$this->_dms = $dms; $this->_dms = $dms;
} } /* }}} */
/** /**
* @return int * @return int
*/ */
function getID() { return $this->_id; } function getID() { return $this->_id; }
/** /**
* @return string * @return string
*/ */
function getName() { return $this->_name; } function getName() { return $this->_name; }
/** /**
* @return bool|SeedDMS_Core_User * @return bool|SeedDMS_Core_User
*/ */
function getOwner() { function getOwner() { /* {{{ */
if (!isset($this->_owner)) if (!isset($this->_owner))
$this->_owner = $this->_dms->getUser($this->_ownerID); $this->_owner = $this->_dms->getUser($this->_ownerID);
return $this->_owner; return $this->_owner;
} } /* }}} */
/** /**
* @param $newName * @param $newName
* @return bool * @return bool
*/ */
function setName($newName) { function setName($newName) { /* {{{ */
$newName = trim($newName); $newName = trim($newName);
if(!$newName) if(!$newName)
return false; return false;
$db = $this->_dms->getDB(); $db = $this->_dms->getDB();
@ -103,75 +103,89 @@ class SeedDMS_Core_KeywordCategory {
$this->_name = $newName; $this->_name = $newName;
return true; return true;
} } /* }}} */
/** /**
* @param SeedDMS_Core_User $user * @param SeedDMS_Core_User $user
* @return bool * @return bool
*/ */
function setOwner($user) { function setOwner($user) { /* {{{ */
if(!$user || !$user->isType('user')) if(!$user || !$user->isType('user'))
return false; return false;
$db = $this->_dms->getDB(); $db = $this->_dms->getDB();
$queryStr = "UPDATE `tblKeywordCategories` SET `owner` = " . $user->getID() . " WHERE `id` = " . $this->_id; $queryStr = "UPDATE `tblKeywordCategories` SET `owner` = " . $user->getID() . " WHERE `id` = " . $this->_id;
if (!$db->getResult($queryStr)) if (!$db->getResult($queryStr))
return false; return false;
$this->_ownerID = $user->getID(); $this->_ownerID = $user->getID();
$this->_owner = $user; $this->_owner = $user;
return true; return true;
} } /* }}} */
/** /**
* @return array * @return array keywords in this list
*/ */
function getKeywordLists() { function getKeywordLists() { /* {{{ */
$db = $this->_dms->getDB(); $db = $this->_dms->getDB();
$queryStr = "SELECT * FROM `tblKeywords` WHERE `category` = " . $this->_id . " order by `keywords`"; $queryStr = "SELECT * FROM `tblKeywords` WHERE `category` = " . $this->_id . " order by `keywords`";
return $db->getResultArray($queryStr); return $db->getResultArray($queryStr);
} }
/** /**
* @param $listID * @return integer number of keywords in this list
* @param $keywords */
* @return bool function countKeywordLists() { /* {{{ */
*/ $db = $this->_dms->getDB();
function editKeywordList($listID, $keywords) {
$queryStr = "SELECT COUNT(*) as `c` FROM `tblKeywords` where `category`=".$this->_id;
$resArr = $db->getResultArray($queryStr);
if (is_bool($resArr) && !$resArr)
return false;
return $resArr[0]['c'];
} /* }}} */
/**
* @param $listID
* @param $keywords
* @return bool
*/
function editKeywordList($listID, $keywords) { /* {{{ */
$db = $this->_dms->getDB(); $db = $this->_dms->getDB();
$queryStr = "UPDATE `tblKeywords` SET `keywords` = ".$db->qstr($keywords)." WHERE `id` = $listID"; $queryStr = "UPDATE `tblKeywords` SET `keywords` = ".$db->qstr($keywords)." WHERE `id` = $listID";
return $db->getResult($queryStr); return $db->getResult($queryStr);
} } /* }}} */
/** /**
* @param $keywords * @param $keywords
* @return bool * @return bool
*/ */
function addKeywordList($keywords) { function addKeywordList($keywords) { /* {{{ */
$db = $this->_dms->getDB(); $db = $this->_dms->getDB();
$queryStr = "INSERT INTO `tblKeywords` (`category`, `keywords`) VALUES (" . $this->_id . ", ".$db->qstr($keywords).")"; $queryStr = "INSERT INTO `tblKeywords` (`category`, `keywords`) VALUES (" . $this->_id . ", ".$db->qstr($keywords).")";
return $db->getResult($queryStr); return $db->getResult($queryStr);
} } /* }}} */
/** /**
* @param $listID * @param $listID
* @return bool * @return bool
*/ */
function removeKeywordList($listID) { function removeKeywordList($listID) { /* {{{ */
$db = $this->_dms->getDB(); $db = $this->_dms->getDB();
$queryStr = "DELETE FROM `tblKeywords` WHERE `id` = $listID"; $queryStr = "DELETE FROM `tblKeywords` WHERE `id` = $listID";
return $db->getResult($queryStr); return $db->getResult($queryStr);
} } /* }}} */
/** /**
* @return bool * @return bool
*/ */
function remove() { function remove() { /* {{{ */
$db = $this->_dms->getDB(); $db = $this->_dms->getDB();
$db->startTransaction(); $db->startTransaction();
@ -189,5 +203,5 @@ class SeedDMS_Core_KeywordCategory {
$db->commitTransaction(); $db->commitTransaction();
return true; return true;
} } /* }}} */
} }