本文整理汇总了PHP中echapJid函数的典型用法代码示例。如果您正苦于以下问题:PHP echapJid函数的具体用法?PHP echapJid怎么用?PHP echapJid使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了echapJid函数的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: ajaxRefreshVcard
function ajaxRefreshVcard($jid)
{
if (!$this->validateJid($jid)) {
return;
}
$a = new Moxl\Xec\Action\Avatar\Get();
$a->setTo(echapJid($jid))->request();
$r = new Get();
$r->setTo(echapJid($jid))->request();
}
示例2: ajaxRefuse
function ajaxRefuse($jid)
{
$jid = echapJid($jid);
$p = new Unsubscribed();
$p->setTo($jid)->request();
// TODO : move in Moxl
$session = \Session::start();
$notifs = $session->get('activenotifs');
unset($notifs[$jid]);
$session->set('activenotifs', $notifs);
$this->onNotifs();
Notification::ajaxClear('invite|' . $jid);
}
示例3: ajaxGetHistory
/**
* @brief Get history
*/
function ajaxGetHistory($jid)
{
if (!$this->validateJid($jid)) {
return;
}
$md = new \Modl\MessageDAO();
$messages = $md->getContact(echapJid($jid), 0, 1);
$g = new \Moxl\Xec\Action\MAM\Get();
$g->setJid(echapJid($jid));
if (!empty($messages)) {
$g->setStart(strtotime($messages[0]->published));
}
$g->request();
}
示例4: ajaxSend
function ajaxSend($to, $pack, $file)
{
if (!$this->validateJid($to)) {
return;
}
list($key, $ext) = explode('.', $file);
$filepath = dirname(__FILE__) . '/stickers/' . $pack . '/' . $key . '.png';
if (!file_exists($filepath)) {
return;
}
// We get the base64
$base64 = base64_encode(file_get_contents($filepath));
// Caching the picture
if (!file_exists(CACHE_PATH . md5($key) . '.png')) {
$p = new Picture();
$p->fromBase($base64);
$p->set($key, 'png');
}
// Creating a message
$m = new \Modl\Message();
$m->session = $this->user->getLogin();
$m->jidto = echapJid($to);
$m->jidfrom = $this->user->getLogin();
$m->sticker = $key;
$m->body = $this->__('sticker.sent');
$m->published = gmdate('Y-m-d H:i:s');
$session = \Session::start();
$m->id = Uuid::uuid4();
$m->type = 'chat';
$m->resource = $session->get('resource');
// Sending the sticker
$html = "<p><img alt='Sticker' src='cid:sha1+" . $key . "@bob.xmpp.org'/></p>";
$p = new Publish();
$p->setTo($m->jidto)->setContent($m->body)->setHTML($html)->setId($m->id)->request();
$md = new \Modl\MessageDAO();
$md->set($m);
// Sending it to Chat
$packet = new Moxl\Xec\Payload\Packet();
$packet->content = $m;
$c = new Chat();
$c->onMessage($packet);
}
示例5: prepareMessages
function prepareMessages($jid)
{
if (!$this->validateJid($jid)) {
return;
}
$md = new \Modl\MessageDAO();
$messages = $md->getContact(echapJid($jid), 0, 30);
if (is_array($messages)) {
$messages = array_reverse($messages);
foreach ($messages as $message) {
$this->prepareMessage($message);
}
}
$view = $this->tpl();
$view->assign('jid', $jid);
$cd = new \Modl\ContactDAO();
$contact = $cd->get($jid);
$me = $cd->get();
if ($me == null) {
$me = new \Modl\Contact();
}
$view->assign('contact', $contact);
$view->assign('me', false);
$left = $view->draw('_chat_bubble', true);
$view->assign('contact', $me);
$view->assign('me', true);
$right = $view->draw('_chat_bubble', true);
$room = $view->draw('_chat_bubble_room', true);
RPC::call('Chat.setBubbles', $left, $right, $room);
RPC::call('Chat.appendMessages', $messages);
}
示例6: setTo
public function setTo($to)
{
$this->_to = echapJid($to);
return $this;
}
示例7: set
public function set($vcard, $jid)
{
$this->__set('jid', \echapJid($jid));
$validate_date = Validator::date('Y-m-d');
if (isset($vcard->vCard->BDAY) && $validate_date->validate($vcard->vCard->BDAY)) {
$this->__set('date', (string) $vcard->vCard->BDAY);
}
$this->__set('date', date(DATE_ISO8601, strtotime($this->date)));
$this->__set('name', (string) $vcard->vCard->NICKNAME);
$this->__set('fn', (string) $vcard->vCard->FN);
$this->__set('url', (string) $vcard->vCard->URL);
$this->__set('gender', (string) $vcard->vCard->{'X-GENDER'});
$this->__set('marital', (string) $vcard->vCard->MARITAL->STATUS);
$this->__set('email', (string) $vcard->vCard->EMAIL->USERID);
$this->__set('adrlocality', (string) $vcard->vCard->ADR->LOCALITY);
$this->__set('adrpostalcode', (string) $vcard->vCard->ADR->PCODE);
$this->__set('adrcountry', (string) $vcard->vCard->ADR->CTRY);
if (filter_var((string) $vcard->vCard->PHOTO, FILTER_VALIDATE_URL)) {
$this->__set('photobin', base64_encode(requestUrl((string) $vcard->vCard->PHOTO, 1)));
} else {
$this->__set('photobin', (string) $vcard->vCard->PHOTO->BINVAL);
}
$this->__set('description', (string) $vcard->vCard->DESC);
}
示例8: prepareMessages
function prepareMessages($jid, $muc = false)
{
if (!$this->validateJid($jid)) {
return;
}
$md = new \Modl\MessageDAO();
if ($muc) {
$messages = $md->getRoom(echapJid($jid));
} else {
$messages = $md->getContact(echapJid($jid), 0, $this->_pagination);
}
if (is_array($messages)) {
$messages = array_reverse($messages);
/*foreach($messages as $message) {
$this->_msgMap[$message->published.$message->jid] = $message;
}
foreach($this->_msgMap as $message) {*/
foreach ($messages as $message) {
$this->prepareMessage($message);
}
}
$view = $this->tpl();
$view->assign('jid', $jid);
$cd = new \Modl\ContactDAO();
$contact = $cd->get($jid);
$me = $cd->get();
if ($me == null) {
$me = new \Modl\Contact();
}
$view->assign('contact', $contact);
$view->assign('me', false);
$left = $view->draw('_chat_bubble', true);
$view->assign('contact', $me);
$view->assign('me', true);
$right = $view->draw('_chat_bubble', true);
$room = $view->draw('_chat_bubble_room', true);
RPC::call('Chat.setBubbles', $left, $right, $room);
//RPC::call('Chat.appendMessages', $messages);
RPC::call('Chat.appendMessagesWrapper', $this->_wrapper);
RPC::call('MovimTpl.scrollPanel');
}
示例9: set
public function set($vcard, $jid)
{
$this->jid = \echapJid($jid);
if (isset($vcard->vCard->BDAY) && (string) $vcard->vCard->BDAY != '') {
$this->date = (string) $vcard->vCard->BDAY;
} else {
$this->date = null;
}
$this->date = date(DATE_ISO8601, strtotime($this->date));
$this->name = (string) $vcard->vCard->NICKNAME;
$this->fn = (string) $vcard->vCard->FN;
$this->url = (string) $vcard->vCard->URL;
$this->gender = (string) $vcard->vCard->{'X-GENDER'};
$this->marital = (string) $vcard->vCard->MARITAL->STATUS;
$this->email = (string) $vcard->vCard->EMAIL->USERID;
$this->adrlocality = (string) $vcard->vCard->ADR->LOCALITY;
$this->adrpostalcode = (string) $vcard->vCard->ADR->PCODE;
$this->adrcountry = (string) $vcard->vCard->ADR->CTRY;
if (filter_var((string) $vcard->vCard->PHOTO, FILTER_VALIDATE_URL)) {
$this->photobin = base64_encode(requestUrl((string) $vcard->vCard->PHOTO, 1));
} else {
$this->photobin = (string) $vcard->vCard->PHOTO->BINVAL;
}
$this->description = (string) $vcard->vCard->DESC;
}
示例10: ajaxGetHistory
/**
* @brief Get history
*/
function ajaxGetHistory($jid = false)
{
$g = new \Moxl\Xec\Action\MAM\Get();
$md = new \Modl\MessageDAO();
if ($jid == false) {
$chats = Cache::c('chats');
foreach ($chats as $jid => $value) {
$messages = $md->getContact(echapJid($jid), 0, 1);
$g->setJid(echapJid($jid));
if (!empty($messages)) {
$g->setStart(strtotime($messages[0]->published) + 10);
}
$g->request();
}
} elseif ($this->validateJid($jid)) {
$messages = $md->getContact(echapJid($jid), 0, 1);
$g->setJid(echapJid($jid));
if (!empty($messages)) {
// We add a little delay of 10sec to prevent some sync issues
$g->setStart(strtotime($messages[0]->published) + 10);
}
$g->request();
}
}
示例11: ajaxRefuse
function ajaxRefuse($jid)
{
$jid = echapJid($jid);
$p = new Unsubscribed();
$p->setTo($jid)->request();
// TODO : move in Moxl
$notifs = Cache::c('activenotifs');
unset($notifs[$jid]);
Cache::c('activenotifs', $notifs);
$this->onNotifs();
}