示例#1
0
/**
 * @param $config
 * @param MessageService $service
 * @param MessageStore $store
 * @param $channel
 * @param $by
 * @throws Exception
 */
function catchupParticipant($config, $service, $store, $channel, $by)
{
    $latest = null;
    $count = 1000;
    do {
        echo "fetch  - {$latest} - {$count} - ";
        switch ($by) {
            case 'channel':
                $res = $service->channelsHistory($channel, $latest, $count);
                break;
            case 'im':
                $res = $service->imHistory($channel, $latest, $count);
                break;
        }
        $messages = $res->messages;
        print_r(count($messages));
        echo "importing - ";
        var_dump($saveRes = $store->save($messages, $channel));
        if ($saveRes['total'] == 0) {
            echo "end, stopping\n";
            break;
        }
        if ($saveRes['success'] == 0) {
            echo "failures, stopping\n";
            break;
        }
        $latest = $messages[count($messages) - 1]->ts;
    } while (true);
}
示例#2
0
/**
 * @param $config
 * @param MessageService $service
 * @param MessageStore $store
 * @param $participant
 * @param $by
 * @throws Exception
 */
function catchupParticipant($config, $service, $store, $participant, $by)
{
    $timestamp = time() * 1000;
    $offset = 0;
    $limit = 1000;
    do {
        echo "fetch {$timestamp} limit {$limit} - ";
        $res = $service->getThreadRange($participant, $timestamp, $offset, $limit, $by);
        $messages = $res->payload->actions;
        var_dump(count($messages));
        echo "importing - ";
        var_dump($saveRes = $store->save($messages));
        if ($saveRes['success'] == 0) {
            echo "failures, stopping\n";
            break;
        }
        $timestamp = $messages[0]->timestamp;
    } while (true);
}
示例#3
0
        break;
    case 'subject_asc':
        $order_by = MessageService::SUBJECT;
        $order_type = "ASC";
        break;
    case 'subject_desc':
        $order_by = MessageService::SUBJECT;
        $order_type = "DESC";
        break;
    default:
        $order_by = MessageService::DATE;
        $order_type = "DESC";
        break;
}
//Creo il MessageService e prendo i messaggi
$ms = new MessageService($currentUser['id']);
$messages = $ms->getFolder($folder, $page, $order_type, $order_by);
//Array contenente i dati del json
$array = array();
//Creo i dati della paginazione
$pag = new Pagination($ms->getFolderCountMessages($folder), MessageService::MESSAGE_FOR_PAGE, $page);
$array['pagination'] = $pag->getNavigator("default.html", "javascript:Messages.goToPage(#PAGE#);");
$array['messages'] = array();
foreach ($messages as $m) {
    $date = DateUtils::GetNice($m['date_tm']);
    $q = DB::FindOne("SELECT user FROM users WHERE id = " . $m[$to_field] . " LIMIT 1");
    $to_from = $m->isMultiple() && $folder == MessageService::SENT ? 'Tutti i membri' : $q['user'];
    $delete_restore = '';
    if ($folder == MessageService::INBOX) {
        $delete_restore = 'C';
    } else {
示例#4
0
 /**
  * 批量删除留言
  */
 public function batch_delete()
 {
     //初始化返回数据
     $return_data = array();
     //请求结构体
     $request_data = array();
     /* 可管理的站点ID列表 */
     $loginfo = Role::get_manager();
     try {
         if ($this->manager_is_admin != 1) {
             remind::set(Kohana::lang('o_global.permission_enough'), 'manage/message');
         }
         $message_ids = $this->input->post('message_id');
         if (is_array($message_ids) && count($message_ids) > 0) {
             $message_service = MessageService::get_instance();
             /* 删除失败的 */
             $failed_message_names = '';
             foreach ($message_ids as $message_id) {
                 if (!$message_service->remove($message_id)) {
                     $failed_message_names .= ',' . $message_id;
                 }
             }
             if (empty($failed_message_names)) {
                 $return_struct['action'] = array('type' => 'location', 'url' => url::base() . 'manage/message/');
                 throw new MyRuntimeException(Kohana::lang('o_manage.delete_message_success'), 403);
             } else {
                 /* 中转提示页面的停留时间 */
                 $return_struct['action']['time'] = 10;
                 $failed_message_names = trim($failed_message_names, ',');
                 throw new MyRuntimeException(Kohana::lang('o_manage.delete_message_error', $failed_message_names), 403);
             }
         } else {
             throw new MyRuntimeException(Kohana::lang('o_global.data_load_error'), 403);
         }
     } catch (MyRuntimeException $ex) {
         $return_struct['status'] = 0;
         $return_struct['code'] = $ex->getCode();
         $return_struct['msg'] = $ex->getMessage();
         //TODO 异常处理
         //throw $ex;
         if ($this->is_ajax_request()) {
             $this->template = new View('layout/empty_html');
             $this->template->content = $return_struct['msg'];
         } else {
             $this->template->return_struct = $return_struct;
             $content = new View('info');
             $this->template->content = $content;
             /* 请求结构数据绑定 */
             $this->template->content->request_data = $request_data;
             /* 返回结构体绑定 */
             $this->template->content->return_struct = $return_struct;
         }
     }
 }
<?php

require_once "MessageService.class.php";
//接受信息
$sender = $_POST['sender'];
$getter = $_POST['getter'];
$content = $_POST['content'];
//把信息输出到一个文件中
//file_put_contents("C:/wamp/www/testinfo.log",$sender."-".$getter.'-'.$content."\r\n", FILE_APPEND);
$MessageService = new MessageService();
$MessageService->addMessage($sender, $getter, $content);
示例#6
0
$message = Charset::Utf8ToDB($_POST['message']);
$important = isset($_POST['important']) ? $_POST['important'] : false;
//boolean
$multiple = isset($_POST['multiple']) ? $_POST['multiple'] : false;
//boolean
$av = new AutoValidator("message-write", $_POST);
if ($av->validate()) {
    //Controllo solo multiple, to e important (gli altri due vengono controllati in MessageService)
    $important = $currentUser->isAdmin() && $important ? 1 : 0;
    $multiple = $multiple == "true";
    if ($multiple != 1) {
        $to = db_escape($to);
        $to = DB::FindOne("SELECT id FROM users WHERE user='******' LIMIT 1");
        $to = (int) $to['id'];
    }
    $ms = new MessageService($currentUser['id']);
    if ($multiple) {
        $ms->sendToAllMembers($subject, $message, $important);
        $response->setSuccess(true);
    } else {
        //Prendo l'id dell'utente a cui spedire il messaggio
        if (DB::Count("users", "id='{$to}' LIMIT 1") == 0) {
            $response->setError("Destinatario inesistente");
        } else {
            $ms->sendToOne($subject, $message, $to, $important);
            $response->setSuccess(true);
        }
    }
} else {
    $response->setError($av->getLastError());
}
示例#7
0
 public function send()
 {
     $service = new MessageService();
     $service->saveMessage($this);
 }
<?php

header("Content-Type: text/xml;charset=utf-8");
//告诉浏览器不要缓存数据
header("Cache-Control: no-cache");
//取出相应用户取得数据的请求
require_once "MessageService.class.php";
//此处取得是上一页定义首尾变量
$getter = $_POST['getter'];
$sender = $_POST['sender'];
//file_put_contents("C:/wamp/www/testinfo.log",$sender."-".$getter."\r\n", FILE_APPEND);
$MessageService = new MessageService();
$mesList = $MessageService->getMessage($getter, $sender);
//file_put_contents("C:/wamp/www/testinfo.log", $mesList."\r\n",FILE_APPEND);
echo $mesList;
示例#9
0
文件: test.php 项目: hnqing/xiahn
<?php

require_once 'MessageService.class.php';
$mesSer = new MessageService();
var_dump($mesSer->getMessage("уехЩ", "admin"));
echo myconv('уехЩ');
示例#10
0
 private function message()
 {
     $service = new MessageService();
     $result = $service->invoke($this->commonUri);
     echo json_encode($result);
 }
示例#11
0
<?php

require_once "MessageService.class.php";
// 介绍用户的姓名和密码
$loginUser = $_POST['username'];
$pswd = $_POST['pswd'];
$MessageService = new MessageService();
$pass = $MessageService->checkUser($loginUser);
//file_put_contents("C:/wamp/www/testinfo.log",$pass."\r\n", FILE_APPEND);
if ($pswd == $pass) {
    header("Location:friendList.php");
    //名字被保存到session中
    session_start();
    $_SESSION['loginUser'] = $loginUser;
} else {
    header("Location:login.php");
    //跳转到下一个页面
}
 public function deleteMessage()
 {
     if (isset($_GET['id'])) {
         $msgService = new MessageService();
         $msgService->deleteMessage($_GET['id']);
         $this->redirect(admin_url('admin.php?page=vmp-msgs'));
     }
 }
示例#13
0
<?php

/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
/** Si occupa di spostare un messaggio nel cestino
    method: POST
    params:
      id_list : id (oppure array di IDs) del messaggio/i da cancellare
    returns:
      success: false => errore, true => OK
  */
require_once "__inc__.php";
$response = new RestfulResponse('json');
$ms = new MessageService($currentUser['id']);
// $_POST[id_list] e' verificato in moveToTrash
$ms->moveToTrash($_POST['id_list']);
$response->setSuccess(true);
$response->send();
示例#14
0
 public function doView()
 {
     $messageService = new MessageService();
     $messageId = intval(Request::get("view_message_id"));
     $messageVo = $messageService->getByPrimary($messageId);
     View::set("MessageViewValue", $messageVo);
     View::display("View");
 }
示例#15
0
    public function getMsgsByMlid($mlid, $uid, $limit)
    {
        $list = array();
        if (empty($mlid)) {
            return $list;
        }
        $mlist = MessageService::getListByMlid($mlid, $uid);
        if (empty($mlist) || $mlist['type'] != 1) {
            return $list;
        }
        $where = '';
        if ($mlist['uid'] == $uid) {
            $where .= ' AND status IN (0,2)';
        } else {
            $where .= ' AND status IN (0,1)';
        }
        $query = FDB::query('SELECT * 
			FROM ' . MessageService::getTablaName($mlid) . " \r\n\t\t\tWHERE mlid='{$mlid}' {$where} ORDER BY dateline DESC LIMIT {$limit}");
        while ($data = FDB::fetch($query)) {
            $data['time'] = getBeforeTimelag($data['dateline']);
            $list[] = $data;
        }
        FDB::query("UPDATE " . FDB::table('user_msg_member') . " SET is_new=0 WHERE mlid='{$mlid}' AND uid='{$uid}' AND is_new=1");
        return array_reverse($list);
    }
示例#16
0
<?php

require_once "MessageService.class.php";
$mes = $_POST['mes'];
$sender = $_POST['sender'];
$getter = $_POST['getter'];
$ms = new MessageService();
$ms->addMessage($sender, $getter, $mes);
//file_put_contents("d:/phpStudy/www/chat/log.txt",$mes.'-'.$sender.'-'.$getter."\r\n",FILE_APPEND);
示例#17
0
    public function doSearchOrderByPhone()
    {
        $ordersService = new OrdersService();
        $messageService = new MessageService();
        $ordersCondition = new OrdersValue();
        $mobile = Request::get('num');
        if ($mobile != '') {
            $ordersCondition->addMobileCondition("%{$mobile}%", Value::LIKE);
        }
        $orderListModel = '手机号(或者固定电话)为 ' . $mobile . ' 的派单';
        $ordersVo = $ordersService->getByPrimary($ordersId);
        $messageVo = $messageService->getByOderid($ordersId);
        $userCondition = new UserValue();
        $userService = new UserService();
        $userlist = $userService->getlist($userCondition);
        $projectCondition = new ProjectValue();
        $projectService = new ProjectService();
        $projectlist = $projectService->getList($projectCondition);
        $areaService = new AreaService();
        $arealist = $areaService->getList(new AreaValue());
        $ordersList = $ordersService->getList($ordersCondition);
        if ($mobile != '') {
            $ordersCondition->addTelephoneCondition("%{$mobile}%", Value::LIKE);
        }
        $ordersList2 = $ordersService->getList($ordersCondition);
        if (is_array($ordersList) and is_array($ordersList2)) {
            $ordersList = array_merge($ordersList, $ordersList2);
        } elseif (is_array($ordersList2)) {
            $ordersList = $ordersList2;
        }
        if (count($ordersList) > 0) {
            echo '<table width="480">
    	       <tr>
    	         <td>姓名</td>
    	         <td>顾客地址</td>
    	         <td>详细情况</td>
    	         <td>电话</td>
    	         <td>手机</td>
    	         <td>操作</td>
    	       </tr>';
            foreach ($ordersList as $k => $v) {
                echo '<tr>
    	         <td>' . $v->customer_name . '</td>
    	         <td>' . $v->customer_address . '</td>
    	         <td>' . $v->telephone . '</td>
    	         <td>' . $v->mobile . '</td>
    	         <td>' . Validation::utf8_trim(substr($v->info, 0, 25)) . '</td>
    	         <td>
				  <a id="show_order' . $v->order_id . '" onclick="showDetail(\'index.php?module=orders&action=AjaxView&view_orders_id=' . $v->order_id . '\')" class="clickevent" >查看</a>
				</td>
    	       </tr>';
            }
            echo '</table>';
            echo '
<script language="javascript">
$(".clickevent").click(function(e){
	e.preventDefault();
})

function showDetail(url){
ymPrompt.close();
 href=url;
 $.get(href,function(data){
 ymPrompt.win({message:data, width:500,height: 700,title: "派单详情",allowSelect:true,allowRightMenu:true});
})
} 
</script>';
        } else {
            echo '0';
        }
    }
<?php

require_once 'MessageService.class.php';
$sender = $_POST['sender'];
$receiver = $_POST['receiver'];
$content = $_POST['content1'];
//file_put_contents("F:/GitHub/Ajax-Practice/mylog2.log",$sender."-".$receiver."-".$content."\r\n",FILE_APPEND);
$messageService = new MessageService();
$messageService->addMessage($sender, $receiver, $content);
示例#19
0
<?php

require 'MessageService.class.php';
header("Content-Type:text/xml;charset=utf-8");
header("Cache-Control: no-cache, no-store, must-revalidate");
// HTTP 1.1.
header("Pragma: no-cache");
// HTTP 1.0.
header("Expires: 0");
// Proxies.
$sender = $_POST['sender'];
$receiver = $_POST['receiver'];
//file_put_contents("F:/GitHub/Ajax-Practice/mylog3.log",$sender."-".$receiver."\r\n",FILE_APPEND);
$messageService = new MessageService();
$mesList = $messageService->getMessage($sender, $receiver);
echo $mesList;
示例#20
0
      subject : oggetto del messaggio
      from_or_to : stringa 'A' o 'Da'
      date : data dell'invio del messaggio (formattata in maniera leggibile)
      discursive_date: data dell'invio del messaggio (gg/mm/yy HH:mm)
      important : true o false se il messaggio è importante o no
      message_html : testo del messaggio (formattato in HTML)
      message_plain : testo del messaggio (non formattato)
      reply : true o false se bisonga mostrare il bottone rispondi o no
      from_to_user : nome dell'utente che ha inviato o ricevuto il messaggio
  */
require_once "__inc__.php";
$response = new RestfulResponse("json");
$r = '';
$id = $_POST['id'];
validate_num($id);
$ms = new MessageService($currentUser['id']);
$m = $ms->getMessage($id);
if ($m['to_id'] == $currentUser['id']) {
    $ms->viewed($id);
}
$from_to = 'A';
$user = '******';
$write = "";
if ($m['to_id'] == $currentUser['id']) {
    $from_to = 'Da';
    $user = '******';
}
$user = DB::FindOne("SELECT user FROM users WHERE id=" . $m[$user] . " LIMIT 1");
$array = array("subject" => $m->getRaw('subject'), "from_or_to" => $from_to, "date" => DateUtils::GetNice($m['date_tm']), "discursive_date" => DateUtils::GetDiscursive($m['date_tm']), "important" => $m->isImportant(), "multiple" => $m->isMultiple(), "message_html" => Text::MessageToHtml($m->getRaw('message')), "message_plain" => $m->getRaw('message'), "reply" => $m['to_id'] == $currentUser['id'], "from_to_user" => $user['user']);
$response->set('value', $array);
$response->setSuccess(true);
<?php
require_once "MessageService.class.php";
$getter=$_POST['getter'];
$sender=$_POST['sender'];
$con=$_POST['con'];


file_put_contents("/Library/WebServer/Documents/ajax/mylog.txt",$getter."---".$sender."---".$con."\r", FILE_APPEND);

$messageService=new MessageService();
$res=$messageService->addMessage($sender,$getter,$con);
if($res==1) {
//success
}else{
echo "err";
}
?> 
示例#22
0
<?php

require_once "MessageService.class.php";
$fname = $_GET['fname'];
// 介绍用户的姓名和密码
$MessageService = new MessageService();
$MessageService->friendList($fname);
示例#23
0
<?php

header("content-type: text/xml;charset=utf-8");
header("Cache-Control: no-cache");
require_once "MessageService.class.php";
$sender = $_POST['sender'];
$getter = $_POST['getter'];
$mesSer = new MessageService();
$mesXML = $mesSer->getMessage($getter, $sender);
//file_put_contents("d:/phpStudy/www/chat/log.txt",$sender.$getter."\r\n",FILE_APPEND);
echo $mesXML;
示例#24
0
<?php

/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
/** Si occupa di spostare un messaggio dal cestino alla posta in arrivo
    method: GET
    params:
      id : id del messaggio da spostare
      dataType : formato della risposta (vedere Restful::PrintResponse)
    returns:
      success: false => errore, true => OK
  */
require_once "__inc__.php";
$response = new RestfulResponse(isset($_POST['dataType']) ? $_POST['dataType'] : 'html');
validate_num($_POST['id']);
$ms = new MessageService($currentUser['id']);
$ms->restoreFromTrash($_POST['id']);
$response->setSuccess(true);
$response->send();
示例#25
0
<?php

require_once "MessageService.class.php";
//接受信息
$name = $_POST['name'];
$sex = $_POST['select_content'];
$age = $_POST['age'];
$pwd = $_POST['password1'];
//把信息输出到一个文件中
file_put_contents("C:/wamp/www/testinf.log", $name . "-" . $sex . '-' . $age . '-' . $pwd . "\r\n", FILE_APPEND);
$MessageService = new MessageService();
$MessageService->addRegister($name, $sex, $age, $pwd);
?>
 <script type="text/javascript">
 	window.onload=function()
 	{
 		 window.close();
 	}
 	
 </script>