Author:
antonivanov
Description: Класс сообщения
Language: PHP
<?php
interface IMessage{
public function send();
public static function getById($id);
public static function getUnreadByUserId($userId);
}
class Message implements IMessage{
protected $_id;
protected $_to; // user id
protected $_isRead; // boolean
protected $_from; // user id or null
protected $_name;
protected $_email;
protected $_message;
protected $_sendDate;
protected $_readDate;
public function __construct($to, $name, $email, $message){
global $userinfo;
if ($userinfo['logged'] == 0){
$this->_from = 0;
$this->_name = $name;
$this->_email = $email;
} else {
$this->_from = $userinfo['id'];
$this->_name = null;
$this->_email = null;
}
$this->_to = intval($to);
$this->_message = $message;
}
public function send() { }
public static function getByid($id) { }
public static function getUnreadByUserId($userId) { }
public function getId(){
return $this->_id;
}
public function getTo(){
return $this->_to;
}
public function getIsRead(){
return $this->_isRead;
}
public function getFrom(){
return $this->_from;
}
public function getName(){
return $this->_name;
}
public function getEmail(){
return $this->_email;
}
public function getMessage(){
return $this->_message;
}
public function getSendDate(){
return $this->_sendDate;
}
public function getReadDate(){
return $this->_readDate;
}
}
class TechSupMessage extends Message implements IMessage{
public function __construct($to, $name, $email, $message, $from = 0, $id = null, $isRead = null, $sendDate = null, $readDate = null){
global $userinfo;
if ($userinfo['logged'] == 0){
$this->_from = 0;
} else {
$this->_from = $userinfo['id'];
}
$this->_name = $name;
$this->_email = $email;
$this->_to = intval($to);
$this->_message = $message;
$this->_id = $id;
$this->_isRead = $isRead;
$this->_sendDate = $sendDate;
$this->_readDate = $readDate;
}
public function send(){
global $userinfo;
if ($userinfo['logged'] == 0){
$query = mysql_query("INSERT INTO `techsup_messages`(`to`,`from`,`name`,`email`,`message`) VALUES (".$this->_to.", ".$this->_from.", ".Language::escapeString($this->_name).", ".Language::escapeString($this->_email).",".Language::escapeString($this->_message).");");
} else {
$query = mysql_query("INSERT INTO `techsup_messages`(`to`,`from`,`message`) VALUES (".$this->_to.", ".$this->_from.", ".Language::escapeString($this->_message).");");
}
if($query){
return true;
} else {
return false;
}
}
public static function getByid($id) {
$query = mysql_query("select * from `techsup_messages` where id = ".intval($id));
while($mes = mysql_fetch_object($query)){
return new TechSupMessage($mes->to, $mes->name, $mes->email, $mes->message, $mes->from, $mes->id, $mes->is_read, $mes->send_date, $mes->read_date);
}
}
public static function getUnreadByUserId($userId) {
$messages = array();
$query = mysql_query("select * from `techsup_messages` where `to` = ".intval($userId)." and `is_read` = '0'");
while($mes = mysql_fetch_object($query)){
$messages[] = new TechSupMessage($mes->to, $mes->name, $mes->email, $mes->message, $mes->from, $mes->id, $mes->is_read, $mes->send_date, $mes->read_date);
}
return $messages;
}
public static function getByUserId($userId) {
$messages = array();
$query = mysql_query("select * from `techsup_messages` where (`to` = ".intval($userId)." or `from` = ".intval($userId).")");
while($mes = mysql_fetch_object($query)){
$messages[] = new TechSupMessage($mes->to, $mes->name, $mes->email, $mes->message, $mes->from, $mes->id, $mes->is_read, $mes->send_date, $mes->read_date);
}
return $messages;
}
}
?>
|
Recent pastes:
blessmaster (PHP)
antonivanov (SQL)
antonivanov (PHP)
brinza (PHP)
ilyhamas (Delphi)
Riateche (PHP)
otherlight (Java)
otherlight (JavaScript)
otherlight (CSS)
otherlight (CSS)
biophreak (JavaScript)
n4n (Perl)
prostoHz (Java)
ndubinkin (XML)
Riateche (Plain Text)
Slapotam (Perl)
ksurent (Perl)
John_Wein (Java)
John_Wein (HTML)
Riateche (HTML)
|