* @since Version 2.0 */ class cmsMessagesModule { public $db; /** * Class constructor */ public function __construct() { $this->db = cDb::getInstance(); } /** * Function to get module records * * @author Aivars Žukovskis * @category cmsMessages Module * @param string $where - sql query * @param string $sort - sql query * @param int $offset - db table offset * @param int $limitPerPage - limit per page * @return array of data * @version 1.1 */ public function getModuleRecords($where, $sort, $offset = 0, $limitPerPage = 20){ $sSql = " SELECT SQL_CALC_FOUND_ROWS mc.id, CONCAT(mc.first_name, ' ', mc.last_name) as sender, mc.email, mc.phone, mc.subject, mc.created, SUBSTR(mc.message, 1, 100) as message FROM mod_messages mc HAVING 1 {$where} ORDER BY {$sort} LIMIT {$offset}, {$limitPerPage} "; $this->db->query($sSql); return $this->db->getArray(); } /** * Function to add or save record data * * @author Aivars Žukovskis * @category cmsMessages Module * @param int $id - record id for update * @param array $data - record data * @return bool record new/old id * @version 1.1 */ public function saveRecordDataById($id, $data){ if($id){ if(!$this->db->_queryUpdate('mod_messages', $data, array('id' => $id))) return false; }else{ if(!($id = $this->db->_queryInsert('mod_messages', $data))) return false; } return $id; } /** * Function to get record data by id * * @author Aivars Žukovskis * @category cmsMessages Module * @param int $id - record id * @return array - record data * @version 1.1 */ public function getRecordDataById($id){ return $this->db->_querySelectRow('mod_messages', array('id', 'first_name', 'phone', 'last_name', 'email', 'subject', 'message', 'created', 'modified'), array('id' => $id)); } /** * Function to delete table records form db * * @author Aivars Žukovskis * @category cmsMessages Module * @param array $ids - record ids to delete * @return bool true / false * @version 1.1 */ public function deleteRecords($ids){ return $this->db->_queryDelete('mod_messages', array('id' => $ids)); } }