chat message modification (1.1.5)
This commit is contained in:
@@ -7,8 +7,8 @@
|
||||
class Databap extends PhpObject
|
||||
{
|
||||
//Common Constants
|
||||
const VERSION = '1.1.4'; //Versioning: <Main_Version>.<Enhancement_Package>.<Patch>-<Release_Candidate>
|
||||
const VERSION_DATE = '24/09/2020';
|
||||
const VERSION = '1.1.5'; //Versioning: <Main_Version>.<Enhancement_Package>.<Patch>-<Release_Candidate>
|
||||
const VERSION_DATE = '30/03/2021';
|
||||
const EXPECTED_PAGE_COOKIE = 'exp_page';
|
||||
const MAIN_SEPARATOR = ' ';
|
||||
const DATE_FORMAT = 'd/m/Y';
|
||||
@@ -180,8 +180,11 @@ class Databap extends PhpObject
|
||||
const DOC_TMP_FOLDER = 'docs/tmp/';
|
||||
const DOC_THUMB_FOLDER = 'docs/thumb/';
|
||||
|
||||
//Objects
|
||||
/**
|
||||
* @var MySqlManager
|
||||
*/
|
||||
private $oMySql;
|
||||
|
||||
private $oClassManagement;
|
||||
private $oAuth;
|
||||
|
||||
@@ -235,7 +238,7 @@ class Databap extends PhpObject
|
||||
self::COMP_TABLE => array(MySqlManager::getText(self::COMP_TABLE), 'logo'),
|
||||
self::CODE_TABLE => array(MySqlManager::getText(self::CODE_TABLE), 'description', MySqlManager::getId(self::USER_TABLE), 'refer_id'),
|
||||
self::URL_TABLE => array(MySqlManager::getId(self::CODE_TABLE), 'phrase'),
|
||||
self::MSG_TABLE => array(MySqlManager::getId(self::USER_TABLE), 'nickname', MySqlManager::getId(self::CHAN_TABLE), MySqlManager::getText(self::MSG_TABLE), 'type', 'date'),
|
||||
self::MSG_TABLE => array(MySqlManager::getId(self::USER_TABLE), 'nickname', MySqlManager::getId(self::CHAN_TABLE), MySqlManager::getText(self::MSG_TABLE), 'type', 'id_message_ref', 'date'),
|
||||
self::CHAN_TABLE => array('safe_name', MySqlManager::getText(self::CHAN_TABLE)),
|
||||
self::CONN_TABLE => array(MySqlManager::getId(self::USER_TABLE), MySqlManager::getId(self::CHAN_TABLE)),
|
||||
self::OPT_TABLE => array(MySqlManager::getId(self::USER_TABLE), MySqlManager::getId(self::OPTNAME_TABLE), MySqlManager::getId(self::OPTVAL_TABLE)),
|
||||
@@ -282,7 +285,8 @@ class Databap extends PhpObject
|
||||
'date' => "date NOT NULL",
|
||||
'system' => "varchar(3)",
|
||||
'extension' => "varchar(10)",
|
||||
'default_value'=>"tinyint(1) DEFAULT 0"
|
||||
'default_value'=>"tinyint(1) DEFAULT 0",
|
||||
'id_message_ref' => "int(10) unsigned"
|
||||
);
|
||||
$asOptions['constraints'] = array
|
||||
(
|
||||
@@ -309,7 +313,7 @@ class Databap extends PhpObject
|
||||
{
|
||||
if($sType!='')
|
||||
{
|
||||
if($sType!='' && !array_key_exists($sType, self::$TYPES)) $this->addError('Type "'.$sType.'" inconnu');
|
||||
if($sType!='' && !array_key_exists($sType, self::$TYPES)) self::addError('Type "'.$sType.'" inconnu');
|
||||
else $asResult = array($sType=>self::$TYPES[$sType]);
|
||||
}
|
||||
else $asResult = self::$TYPES;
|
||||
@@ -324,7 +328,7 @@ class Databap extends PhpObject
|
||||
$asResult[$sType] = array();
|
||||
foreach($oInfo as $sInfo)
|
||||
{
|
||||
if(!array_key_exists($sInfo, $asTypeInfo)) $this->addError('Info "'.$sInfo.'" inconnue');
|
||||
if(!array_key_exists($sInfo, $asTypeInfo)) self::addError('Info "'.$sInfo.'" inconnue');
|
||||
else $asResult[$sType][$sInfo] = $asTypeInfo[$sInfo];
|
||||
}
|
||||
if($bUnique) $asResult[$sType] = $asResult[$sType][$sInfo];
|
||||
@@ -2083,6 +2087,19 @@ class Databap extends PhpObject
|
||||
return $this->getJsonPostResult($bSuccess, $sDesc);
|
||||
}
|
||||
|
||||
public function editChatMessage($iRefMsgId, $sMessage)
|
||||
{
|
||||
$bSuccess = false;
|
||||
$sDesc = '';
|
||||
$asRefMsg = $this->oMySql->selectRow(self::MSG_TABLE, $iRefMsgId);
|
||||
if($asRefMsg['type'] == self::MESSAGE_USER && $asRefMsg[$this->oMySql::getId(self::USER_TABLE)] == $this->getUserId()) {
|
||||
$bSuccess = $this->addMessage($sMessage, $asRefMsg['type'], $asRefMsg['id_channel'], $this->getUserId(), $iRefMsgId);
|
||||
}
|
||||
else $sDesc = 'Wrong user ID';
|
||||
|
||||
return $this->getJsonPostResult($bSuccess, $sDesc);
|
||||
}
|
||||
|
||||
private function getJsonMessage($asData)
|
||||
{
|
||||
return self::JSON_PREFIX.$this->jsonConvert($asData);
|
||||
@@ -2102,7 +2119,7 @@ class Databap extends PhpObject
|
||||
$sFrom = $asUserFrom['name'].' <www-data@lutran.fr>';
|
||||
|
||||
$sTo = $asUserTo['name'].' <'.$asUserTo['email'].'>';
|
||||
$sMessage .= "\n\n\n".'<i>Ne répondez pas à ce mail. Connectez-vous sur <a href="http://databap.lutran.fr/#chat">Databap</a>.</i>';
|
||||
$sMessage .= "\n\n\n".'<i>Ne répondez pas à ce mail. Connectez-vous sur <a href="https://databap.lutran.fr/#chat">Databap</a>.</i>';
|
||||
|
||||
$sResult = ToolBox::sendMail($sFrom, 'Databap PM', $sMessage, $sTo, array(), false);
|
||||
$bSuccess = ($sResult==ToolBox::MAIL_SUCCESS);
|
||||
@@ -2110,7 +2127,7 @@ class Databap extends PhpObject
|
||||
return $bSuccess;
|
||||
}
|
||||
|
||||
private function addMessage($sMessage, $sType, $iChanId, $iUserId=0)
|
||||
private function addMessage($sMessage, $sType, $iChanId, $iUserId=0, $iRefMsgId=0)
|
||||
{
|
||||
$bResult = false;
|
||||
$iUserId = ($iUserId>0)?$iUserId:$this->getUserId();
|
||||
@@ -2121,6 +2138,7 @@ class Databap extends PhpObject
|
||||
MySqlManager::getId(self::CHAN_TABLE) => $iChanId,
|
||||
MySqlManager::getText(self::MSG_TABLE) => $sMessage,
|
||||
'type' => $sType,
|
||||
'id_message_ref' => $iRefMsgId,
|
||||
'date' => 'CURDATE()');
|
||||
$bResult = $this->oMySql->insertRow(self::MSG_TABLE, $asInsert);
|
||||
}
|
||||
@@ -2153,7 +2171,7 @@ class Databap extends PhpObject
|
||||
$iCurTimeStamp = time();
|
||||
$sCurDate = date(Databap::DATE_SQL_FORMAT, $iCurTimeStamp);
|
||||
$sLimitDate = date(Databap::DATE_SQL_FORMAT, $iCurTimeStamp - $this->getUserOptionValue(self::OPT_CHAT_HISTO)*24*60*60);
|
||||
$asInfo = array('select' => array($sMsgTableChanIdCol, $sMsgIdCol, $sMsgTextCol, 'type', $sMsgTableLed, 'first_name', 'last_name', $sUserIdCol, 'nickname'),
|
||||
$asInfo = array('select' => array($sMsgTableChanIdCol, $sMsgIdCol, $sMsgTextCol, 'type', 'id_message_ref', $sMsgTableLed, 'first_name', 'last_name', $sUserIdCol, 'nickname'),
|
||||
'from' => self::CONN_TABLE,
|
||||
'joinOn' => array( self::MSG_TABLE =>array($sMsgTableChanIdCol, '=', $sConnTableChanIdCol),
|
||||
self::USER_TABLE=>array($sUserTableUserIdCol, '=', $sMsgTableUserIdCol)),
|
||||
@@ -2193,6 +2211,7 @@ class Databap extends PhpObject
|
||||
$asMessages['messages'][$iMessageId]['id_user'] = $iUserId;
|
||||
$asMessages['messages'][$iMessageId]['message'] = $asMessageInfo[$sMsgTextCol];
|
||||
$asMessages['messages'][$iMessageId]['msg_class'] = $sMessageType;
|
||||
$asMessages['messages'][$iMessageId]['id_message_ref'] = (int) $asMessageInfo['id_message_ref'];
|
||||
$asMessages['messages'][$iMessageId]['date'] = self::getDateFormat($asMessageInfo['led'], self::DATE_FORMAT);
|
||||
$asMessages['messages'][$iMessageId]['time'] = self::getDateFormat($asMessageInfo['led'], self::TIME_FORMAT);
|
||||
$asMessages['messages'][$iMessageId]['name'] = self::getNameFormat($asMessageInfo['first_name'], $asMessageInfo['last_name']);
|
||||
|
||||
Reference in New Issue
Block a user