function searchAllFriend($uid, $keyword, $offset, $limit)
 {
     list($uid, $keyword, $offset, $limit) = array(intval($uid), trim($keyword), intval($offset), intval($limit));
     if ($uid < 1 || !$keyword) {
         $this->buildResponse(Friend_INVALID_PARAMS);
     }
     $keyword = ACloud_Sys_Core_Common::convert($keyword, ACloud_Sys_Core_Common::getGlobal('g_charset'), 'UTF-8');
     $uids = array();
     $query = $GLOBALS['db']->query("SELECT friendid FROM pw_friends WHERE status='0' AND uid=" . S::sqlEscape($uid));
     while ($rt = $GLOBALS['db']->fetch_array($query)) {
         $uids[] = $rt['friendid'];
     }
     if (!S::isArray($uids)) {
         return $this->buildResponse(0, array());
     }
     list($result, $uids) = array(array(), array_slice($uids, 0, 150));
     $count = $GLOBALS['db']->get_value("SELECT COUNT(*) as count FROM pw_members WHERE username LIKE " . S::sqlEscape("%{$keyword}%") . " AND uid IN (" . S::sqlImplode($uids) . ")");
     if ($count < 1) {
         return $this->buildResponse(0, array());
     }
     $sqlLimit = $offset > 0 ? ' AND uid > ' . S::sqlEscape($offset) : '';
     $query = $GLOBALS['db']->query("SELECT uid,icon,username FROM pw_members WHERE username LIKE " . S::sqlEscape("%{$keyword}%") . " AND uid IN (" . S::sqlImplode($uids) . ") {$sqlLimit} ORDER BY uid ASC LIMIT " . intval($limit));
     require_once R_P . 'require/showimg.php';
     while ($rt = $GLOBALS['db']->fetch_array($query)) {
         $tmpIcon = showfacedesign($rt['icon'], 1, 's');
         $result[] = array('uid' => $rt['uid'], 'username' => $rt['username'], 'icon' => $tmpIcon[0]);
     }
     return $this->buildResponse(0, array('count' => $count, 'friends' => $result));
 }
Пример #2
0
 function buildRequestArguments($arguments, $request)
 {
     $result = array();
     $charset = ACloud_Sys_Core_Common::getGlobal('g_charset');
     foreach ($arguments as $arg) {
         $result[] = isset($request[$arg]) ? ACloud_Sys_Core_Common::convert($request[$arg], $charset, 'UTF-8') : null;
     }
     return $result;
 }
Пример #3
0
 function convert($str, $toEncoding, $fromEncoding, $ifMb = true)
 {
     if (strtolower($toEncoding) == strtolower($fromEncoding)) {
         return $str;
     }
     is_object($str) && ($str = get_object_vars($str));
     if (is_array($str)) {
         foreach ($str as $key => $value) {
             is_object($value) && ($value = get_object_vars($value));
             $str[$key] = ACloud_Sys_Core_Common::convert($value, $toEncoding, $fromEncoding, $ifMb);
         }
         return $str;
     } else {
         if (function_exists('mb_convert_encoding') && $ifMb) {
             return mb_convert_encoding($str, $toEncoding, $fromEncoding);
         } else {
             static $sConvertor = null;
             !$toEncoding && ($toEncoding = 'GBK');
             !$fromEncoding && ($fromEncoding = 'GBK');
             if (!isset($sConvertor) && !is_object($sConvertor)) {
                 require_once ACLOUD_PATH . '/system/core/sys.core.charset.php';
                 $sConvertor = new ACloud_Sys_Core_Charset();
             }
             return $sConvertor->Convert($str, $fromEncoding, $toEncoding, !$ifMb);
         }
     }
 }
Пример #4
0
 function getRequestArgumentValue($param, $request)
 {
     $charset = ACloud_Sys_Core_Common::getGlobal('g_charset');
     return isset($request[$param]) ? ACloud_Sys_Core_Common::convert($request[$param], $charset, 'UTF-8') : null;
 }
Пример #5
0
 function dataFlowXmlFormat($docs, $charset, $totalPages = null)
 {
     $docs = ACloud_Sys_Core_Common::convert($docs, 'UTF-8', $charset);
     require_once ACLOUD_PATH . '/system/core/sys.core.xml.php';
     return ACloud_Sys_Core_XML::createXML($docs, 'UTF-8', $totalPages);
 }