Update functions and calls

Update functions and calls.
This commit is contained in:
Adam Magness 2018-01-15 12:14:09 -05:00
parent d5623d28d5
commit b3e6a1d283
4 changed files with 74 additions and 66 deletions

View File

@ -16,6 +16,7 @@ use Friendica\Core\Worker;
use Friendica\Database\DBM; use Friendica\Database\DBM;
use Friendica\Model\Contact; use Friendica\Model\Contact;
use Friendica\Model\Group; use Friendica\Model\Group;
use Friendica\Model\Mail;
use Friendica\Model\Photo; use Friendica\Model\Photo;
use Friendica\Model\User; use Friendica\Model\User;
use Friendica\Network\FKOAuth1; use Friendica\Network\FKOAuth1;
@ -42,7 +43,6 @@ require_once 'include/security.php';
require_once 'include/html2bbcode.php'; require_once 'include/html2bbcode.php';
require_once 'mod/wall_upload.php'; require_once 'mod/wall_upload.php';
require_once 'mod/proxy.php'; require_once 'mod/proxy.php';
require_once 'include/message.php';
require_once 'include/like.php'; require_once 'include/like.php';
require_once 'include/plaintext.php'; require_once 'include/plaintext.php';
@ -3644,7 +3644,7 @@ function api_direct_messages_new($type)
} }
} }
$id = send_message($recipient['cid'], $_POST['text'], $sub, $replyto); $id = Mail::send($recipient['cid'], $_POST['text'], $sub, $replyto);
if ($id > -1) { if ($id > -1) {
$r = q("SELECT * FROM `mail` WHERE id=%d", intval($id)); $r = q("SELECT * FROM `mail` WHERE id=%d", intval($id));

View File

@ -1,13 +1,15 @@
<?php <?php
/**
* @file mod/message.php
*/
use Friendica\App; use Friendica\App;
use Friendica\Content\Smilies; use Friendica\Content\Smilies;
use Friendica\Core\System; use Friendica\Core\System;
use Friendica\Database\DBM; use Friendica\Database\DBM;
use Friendica\Model\Contact; use Friendica\Model\Contact;
use Friendica\Model\Mail;
require_once 'include/acl_selectors.php'; require_once 'include/acl_selectors.php';
require_once 'include/message.php';
require_once 'include/conversation.php'; require_once 'include/conversation.php';
function message_init(App $a) function message_init(App $a)
@ -57,7 +59,7 @@ function message_post(App $a)
$body = x($_REQUEST, 'body') ? escape_tags(trim($_REQUEST['body'])) : ''; $body = x($_REQUEST, 'body') ? escape_tags(trim($_REQUEST['body'])) : '';
$recipient = x($_REQUEST, 'messageto') ? intval($_REQUEST['messageto']) : 0; $recipient = x($_REQUEST, 'messageto') ? intval($_REQUEST['messageto']) : 0;
$ret = send_message($recipient, $body, $subject, $replyto); $ret = Mail::send($recipient, $body, $subject, $replyto);
$norecip = false; $norecip = false;
switch ($ret) { switch ($ret) {

View File

@ -5,10 +5,9 @@
use Friendica\App; use Friendica\App;
use Friendica\Core\System; use Friendica\Core\System;
use Friendica\Database\DBM; use Friendica\Database\DBM;
use Friendica\Model\Mail;
use Friendica\Model\Profile; use Friendica\Model\Profile;
require_once 'include/message.php';
function wallmessage_post(App $a) { function wallmessage_post(App $a) {
$replyto = Profile::getMyURL(); $replyto = Profile::getMyURL();
@ -50,7 +49,7 @@ function wallmessage_post(App $a) {
return; return;
} }
$ret = send_wallmessage($user, $body, $subject, $replyto); $ret = Mail::sendWall($user, $body, $subject, $replyto);
switch($ret){ switch($ret){
case -1: case -1:

View File

@ -11,13 +11,22 @@ use Friendica\Database\DBM;
use dba; use dba;
require_once 'include/dba.php'; require_once 'include/dba.php';
require_once 'include/datetime.php';
/** /**
* Class to handle private messages * Class to handle private messages
*/ */
class Mail class Mail
{ {
function send_message($recipient = 0, $body = '', $subject = '', $replyto = '') /**
* Send private message
*
* @param integer $recipient recipient id, default 0
* @param string $body message body, default empty
* @param string $subject message subject, default empty
* @param string $replyto reply to
*/
public static function send($recipient = 0, $body = '', $subject = '', $replyto = '')
{ {
$a = get_app(); $a = get_app();
@ -29,13 +38,8 @@ class Mail
$subject = t('[no subject]'); $subject = t('[no subject]');
} }
$me = q("SELECT * FROM `contact` WHERE `uid` = %d AND `self` = 1 LIMIT 1", $me = dba::selectFirst('contact', [], ['uid' => local_user(), 'self' => true]);
intval(local_user()) $contact = dba::selectFirst('contact', [], ['id' => $recipient, 'uid' => local_user()]);
);
$contact = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1",
intval($recipient),
intval(local_user())
);
if (!(count($me) && (count($contact)))) { if (!(count($me) && (count($contact)))) {
return -2; return -2;
@ -74,9 +78,9 @@ class Mail
$handles = $recip_handle . ';' . $sender_handle; $handles = $recip_handle . ';' . $sender_handle;
$fields = array('uid' => local_user(), 'guid' => $conv_guid, 'creator' => $sender_handle, $fields = ['uid' => local_user(), 'guid' => $conv_guid, 'creator' => $sender_handle,
'created' => datetime_convert(), 'updated' => datetime_convert(), 'created' => datetime_convert(), 'updated' => datetime_convert(),
'subject' => $subject, 'recips' => $handles); 'subject' => $subject, 'recips' => $handles];
if (dba::insert('conv', $fields)) { if (dba::insert('conv', $fields)) {
$convid = dba::lastInsertId(); $convid = dba::lastInsertId();
} }
@ -92,26 +96,28 @@ class Mail
} }
$post_id = null; $post_id = null;
$result = q("INSERT INTO `mail` ( `uid`, `guid`, `convid`, `from-name`, `from-photo`, `from-url`, $success = dba::insert(
`contact-id`, `title`, `body`, `seen`, `reply`, `replied`, `uri`, `parent-uri`, `created`) 'mail',
VALUES ( %d, '%s', %d, '%s', '%s', '%s', %d, '%s', '%s', %d, %d, %d, '%s', '%s', '%s' )", [
intval(local_user()), 'uid' => local_user(),
dbesc($guid), 'guid' => $guid,
intval($convid), 'convid' => $convid,
dbesc($me[0]['name']), 'from-name' => $me[0]['name'],
dbesc($me[0]['thumb']), 'from-photo' => $me[0]['thumb'],
dbesc($me[0]['url']), 'from-url' => $me[0]['url'],
intval($recipient), `contact-id` => $recipient,
dbesc($subject), `title` => $subject,
dbesc($body), `body` => $body,
1, `seen` => true,
intval($reply), `reply` => $reply,
0, `replied` => false,
dbesc($uri), `uri` => $uri,
dbesc($replyto), `parent-uri` => $replyto,
datetime_convert() `created` => datetime_convert()
]
); );
if ($result) {
if ($success) {
$post_id = dba::lastInsertId(); $post_id = dba::lastInsertId();
} }
@ -136,13 +142,7 @@ class Mail
} }
$image_uri = substr($image, strrpos($image, '/') + 1); $image_uri = substr($image, strrpos($image, '/') + 1);
$image_uri = substr($image_uri, 0, strpos($image_uri, '-')); $image_uri = substr($image_uri, 0, strpos($image_uri, '-'));
q("UPDATE `photo` SET `allow_cid` = '%s' dba::update('photo', ['allow-cid' => '<' . $recipient . '>'], ['resource-id' => $image_uri, 'album' => 'Wall Photos', 'uid' => local_user()]);
WHERE `resource-id` = '%s' AND `album` = '%s' AND `uid` = %d ",
dbesc('<' . $recipient . '>'),
dbesc($image_uri),
dbesc( t('Wall Photos')),
intval(local_user())
);
} }
} }
} }
@ -155,7 +155,13 @@ class Mail
} }
} }
function send_wallmessage($recipient = '', $body = '', $subject = '', $replyto = '') /**
* @param string $recipient recipient, default empty
* @param string $body message body, default empty
* @param string $subject message subject, default empty
* @param string $replyto reply to, default empty
*/
public static function sendWall($recipient = '', $body = '', $subject = '', $replyto = '')
{ {
if (!$recipient) { if (!$recipient) {
return -1; return -1;
@ -186,9 +192,9 @@ class Mail
$handles = $recip_handle . ';' . $sender_handle; $handles = $recip_handle . ';' . $sender_handle;
$convid = null; $convid = null;
$fields = array('uid' => $recipient['uid'], 'guid' => $conv_guid, 'creator' => $sender_handle, $fields = ['uid' => $recipient['uid'], 'guid' => $conv_guid, 'creator' => $sender_handle,
'created' => datetime_convert(), 'updated' => datetime_convert(), 'created' => datetime_convert(), 'updated' => datetime_convert(),
'subject' => $subject, 'recips' => $handles); 'subject' => $subject, 'recips' => $handles];
if (dba::insert('conv', $fields)) { if (dba::insert('conv', $fields)) {
$convid = dba::lastInsertId(); $convid = dba::lastInsertId();
} }
@ -198,25 +204,26 @@ class Mail
return -4; return -4;
} }
q("INSERT INTO `mail` ( `uid`, `guid`, `convid`, `from-name`, `from-photo`, `from-url`, dba::insert(
`contact-id`, `title`, `body`, `seen`, `reply`, `replied`, `uri`, `parent-uri`, `created`, `unknown`) 'mail',
VALUES ( %d, '%s', %d, '%s', '%s', '%s', %d, '%s', '%s', %d, %d, %d, '%s', '%s', '%s', %d )", [
intval($recipient['uid']), `uid` => $recipient['uid'],
dbesc($guid), `guid` => $guid,
intval($convid), `convid` => $convid,
dbesc($me['name']), `from-name` => $me['name'],
dbesc($me['photo']), `from-photo` => $me['photo'],
dbesc($me['url']), `from-url` => $me['url'],
0, `contact-id` => 0,
dbesc($subject), `title` => $subject,
dbesc($body), `body` => $body,
0, `seen` => false,
0, `reply` => false,
0, `replied` => false,
dbesc($uri), `uri` => $uri,
dbesc($replyto), `parent-uri` => $replyto,
datetime_convert(), `created` => datetime_convert(),
1 `unknown` => true
]
); );
return 0; return 0;