Example #1
0
 function csc($task = array())
 {
     global $_G;
     $taskvars = array('num' => 0);
     $num = 0;
     $query = DB::query("SELECT variable, value FROM " . DB::table('common_taskvar') . " WHERE taskid='{$task['taskid']}'");
     while ($taskvar = DB::fetch($query)) {
         if ($taskvar['value']) {
             $taskvars[$taskvar['variable']] = $taskvar['value'];
         }
     }
     $taskvars['time'] = floatval($taskvars['time']);
     if ($taskvars['act'] == 'buddy') {
         loaducenter();
         $num = uc_friend_totalnum($_G['uid'], 1) + uc_friend_totalnum($_G['uid'], 3) - DB::result_first("SELECT value FROM " . DB::table('forum_spacecache') . " WHERE uid='{$_G['uid']}' AND variable='buddy{$task['taskid']}'");
     } elseif ($taskvars['act'] == 'magic') {
         $num = DB::result_first("SELECT COUNT(*) FROM " . DB::table('forum_magiclog') . " WHERE action='2' AND uid='{$_G['uid']}'" . ($taskvars['time'] ? " AND dateline BETWEEN {$task['applytime']} AND {$task['applytime']}+3600*{$taskvars['time']}" : " AND dateline>{$task['applytime']}"));
     }
     if ($num && $num >= $taskvars['num']) {
         if (in_array($taskvars['act'], array('buddy', 'favorite'))) {
             DB::query("DELETE FROM " . DB::table('forum_spacecache') . " WHERE uid='{$_G['uid']}' AND variable='{$taskvars['act']}{$task['taskid']}'");
         }
         return TRUE;
     } elseif ($taskvars['time'] && TIMESTAMP >= $task['applytime'] + 3600 * $taskvars['time'] && (!$num || $num < $taskvars['num'])) {
         return FALSE;
     } else {
         return array('csc' => $num > 0 && $taskvars['num'] ? sprintf("%01.2f", $num / $taskvars['num'] * 100) : 0, 'remaintime' => $taskvars['time'] ? $task['applytime'] + $taskvars['time'] * 3600 - TIMESTAMP : 0);
     }
 }
Example #2
0
function task_csc($task = array())
{
    global $db, $tablepre, $discuz_uid, $timestamp;
    $taskvars = array('num' => 0);
    $num = 0;
    $query = $db->query("SELECT variable, value FROM {$tablepre}taskvars WHERE taskid='{$task['taskid']}'");
    while ($taskvar = $db->fetch_array($query)) {
        if ($taskvar['value']) {
            $taskvars[$taskvar['variable']] = $taskvar['value'];
        }
    }
    $taskvars['time'] = floatval($taskvars['time']);
    if ($taskvars['act'] == 'buddy') {
        include_once DISCUZ_ROOT . './uc_client/client.php';
        $num = uc_friend_totalnum($discuz_uid, 1) + uc_friend_totalnum($discuz_uid, 3) - $db->result_first("SELECT value FROM {$tablepre}spacecaches WHERE uid='{$discuz_uid}' AND variable='buddy{$task['taskid']}'");
    } elseif ($taskvars['act'] == 'favorite') {
        $num = $db->result_first("SELECT COUNT(*) FROM {$tablepre}favorites WHERE uid='{$discuz_uid}' AND tid>'0'") - $db->result_first("SELECT value FROM {$tablepre}spacecaches WHERE uid='{$discuz_uid}' AND variable='favorite{$task['taskid']}'");
    } elseif ($taskvars['act'] == 'magic') {
        $num = $db->result_first("SELECT COUNT(*) FROM {$tablepre}magiclog WHERE action='2' AND uid='{$discuz_uid}'" . ($taskvars['time'] ? " AND dateline BETWEEN {$task['applytime']} AND {$task['applytime']}+3600*{$taskvars['time']}" : " AND dateline>{$task['applytime']}"));
    }
    if ($num && $num >= $taskvars['num']) {
        if (in_array($taskvars['act'], array('buddy', 'favorite'))) {
            $db->query("DELETE FROM {$tablepre}spacecaches WHERE uid='{$discuz_uid}' AND variable='{$taskvars['act']}{$task['taskid']}'");
        }
        return TRUE;
    } elseif ($taskvars['time'] && $timestamp >= $task['applytime'] + 3600 * $taskvars['time'] && (!$num || $num < $taskvars['num'])) {
        return FALSE;
    } else {
        return array('csc' => $num > 0 && $taskvars['num'] ? sprintf("%01.2f", $num / $taskvars['num'] * 100) : 0, 'remaintime' => $taskvars['time'] ? $task['applytime'] + $taskvars['time'] * 3600 - $timestamp : 0);
    }
}
Example #3
0
	 *	关注一个用户
	 */
    public function follow_create()
    {
        if (empty($this->mid) || empty($this->user_id)) {
            return 0;
        }
        $r = uc_friend_add($this->mid, $this->user_id);
        return $r;
Example #4
0
	function areFriends($uId1, $uId2) {
		$num = uc_friend_totalnum($uId1, 3);
		$friends = uc_friend_ls($uId1, 1, $num, $num, 3);
		$result = false;
		foreach($friends as $friend) {
			if($friend['friendid'] == $uId2) {
				$result = true;
				break;
			}
		}
		return new APIResponse($result);
	}
Example #5
0
	function _space2user($member) {
		$adminLevel = 'none';
		if($this->_isfounder($member)) {
			$adminLevel = 'founder';
		} elseif($member['adminid'] == 1) {
			$adminLevel = 'manager';
		}

		$user = array(
			'uId'		=> $member['uid'],
			'handle'	=> $member['username'],
			'action'	=> $member['action'],
			'realName'	=> $member['name'],
			'realNameChecked' => $member['namestatus'] ? true : false,
			'spaceName'	=> $member['spacename'],
			'gender'	=> $member['sex'] == 1 ? 'male' : ($member['sex'] == 2 ? 'female' : 'unknown'),
			'email'		=> $member['email'],
			'qq'		=> $member['qq'],
			'msn'		=> $member['msn'],
			'birthday'	=> $member['bday'],
			'bloodType'	=> empty($member['blood']) ? 'unknown' : $member['blood'],
			'relationshipStatus' => $member['marry'] == 1 ? 'single' : ($member['marry'] == 2 ? 'notSingle' : 'unknown'),
			'birthProvince' => $member['birthprovince'],
			'birthCity'	=> $member['birthcity'],
			'resideProvince' => $member['resideprovince'],
			'resideCity'	=> $member['residecity'],
			'viewNum'	=> 0,
			'friendNum'	=> uc_friend_totalnum($member['uid'], 3),
			'myStatus'	=> $member['bio'],
			'lastActivity' => $member['lastactivity'],
			'created'	=> $member['regdate'],
			'credit'	=> $member['credits'],
			'isUploadAvatar'	=> $member['avatar'] ? true : false,
			'adminLevel'		=> $adminLevel,
			'homepagePrivacy'	=> 'public',
			'profilePrivacy'	=> 'public',
			'friendListPrivacy'	=> 'public',
		);
		return $user;
	}
Example #6
0
<?php

/**
 * UCenter 应用程序开发 Example
 *
 * 列出好友的 Example 代码
 * 使用到的接口函数:
 * uc_friend_totalnum()	必须,返回好友总数
 * uc_friend_ls()	必须,返回好友列表
 * uc_friend_delete()	必须,删除好友
 * uc_friend_add()	必须,添加好友
 */
if (empty($_POST['submit'])) {
    $num = uc_friend_totalnum($Example_uid);
    echo '您有 ' . $num . ' 个好友';
    echo '<form method="post" action="' . $_SERVER['PHP_SELF'] . '?example=friend">';
    $friendlist = uc_friend_ls($Example_uid, 1, 999, $num);
    if ($friendlist) {
        foreach ($friendlist as $friend) {
            echo '<input type="checkbox" name="delete[]" value="' . $friend['friendid'] . '">';
            switch ($friend['direction']) {
                case 1:
                    echo '[关注]';
                    break;
                case 3:
                    echo '[好友]';
                    break;
            }
            echo $friend['username'] . ':' . $friend['comment'] . '<br>';
        }
    }
Example #7
0
function API_RowFriend($direction = 0)
{
    global $userid;
    include_once ONEZ_ROOT . './uc_client/client.php';
    return uc_friend_totalnum($userid);
}
Example #8
0
        function submenu_friend()
        {
            echo '<div class=wrap>';
            echo '<h2>' . __('Friend', 'ucenter') . '</h2>';
            global $current_user;
            wp_get_current_user();
            list($uid, $_, $_) = uc_get_user($current_user->user_login);
            $friends_per_page = 10;
            $handler = $_SERVER['PHP_SELF'] . '?page=' . $_GET['page'];
            $action = !empty($_GET['action']) ? $_GET['action'] : 'view';
            $_GET['tab'] = !empty($_GET['tab']) ? $_GET['tab'] : 'friend';
            $menu = array(array('friend', '', __('Friend', 'ucenter')), array('focus', '', __('Focus', 'ucenter')), array('add', 'action=add', __('Add Friend', 'ucenter')));
            echo '<ul class="ucenter-ul">';
            foreach ($menu as $item) {
                printf("<li><a href='{$handler}&tab={$item['0']}&{$item['1']}' %s>{$item['2']}</a></li>", $_GET['tab'] == $item[0] ? 'class="current"' : '');
            }
            echo '</ul><br /><hr />';
            switch ($action) {
                case 'view':
                    $_GET['pageid'] = !empty($_GET['pageid']) ? $_GET['pageid'] : 1;
                    $_GET['tab'] = !empty($_GET['tab']) ? $_GET['tab'] : 'friend';
                    $direction = !empty($_GET['tab']) && $_GET['tab'] == 'focus' ? 1 : 3;
                    $num = uc_friend_totalnum($uid, $direction);
                    $friendlist = uc_friend_ls($uid, $_GET['pageid'], $friends_per_page, $num, $direction);
                    if ($friendlist) {
                        echo '<ul>';
                        foreach ($friendlist as $friend) {
                            echo "<li>{$friend['username']} : {$friend['comment']} [ <a href='{$_SERVER['PHP_SELF']}?page=ucenter-mail-box&tab=send&action=send&touser={$friend['username']}'>Send Message</a> | <a href='{$handler}&action=delete&delete={$friend['friendid']}'>Delete</a> ] </li>";
                        }
                        echo '</ul>';
                    }
                    break;
                case 'add':
                    if ($_POST['newfriend'] && ($friendid = uc_get_user($_POST['newfriend']))) {
                        if (uc_friend_add($uid, $friendid[0], $_POST['newcomment'])) {
                            echo $_POST['newfriend'] . __(' has been added to your list!', 'ucenter') . '<br /><br />';
                        }
                    }
                    echo "<form method='post' action='{$handler}&action=add&tab={$_GET['tab']}'>\n\t\t\t\t\t<table>\n\t\t\t\t\t\t<tr><td>" . __('Add Friend', 'ucenter') . '</td><td><input name="newfriend"></td></tr>
						<tr><td>' . __('Description', 'ucenter') . '</td><td><input name="newcomment"></td></tr>
					</table>
					<input name="submit" type="submit">
					</form>';
                    break;
                case 'delete':
                    if (!is_array($_GET['delete'])) {
                        $_GET['delete'] = array($_GET['delete']);
                    }
                    if (!empty($_GET['delete'])) {
                        if (uc_friend_delete($uid, $_GET['delete'])) {
                            echo __('Removed!', 'ucenter');
                        }
                    }
                    break;
            }
            echo '</div>';
        }
Example #9
0
} elseif ($action == 'send' && submitcheck('pmsubmit')) {
    if (!$allowsendpm) {
        showmessage('pm_send_disable');
    }
    if (!$adminid && $newbiespan && (!$lastpost || $timestamp - $lastpost < $newbiespan * 3600)) {
        $query = $db->query("SELECT regdate FROM {$tablepre}members WHERE uid='{$discuz_uid}'");
        if ($timestamp - $db->result($query, 0) < $newbiespan * 3600) {
            showmessage('pm_newbie_span');
        }
    }
    !($exempt & 1) && checklowerlimit($creditspolicy['sendpm'], -1);
    if (!empty($uid)) {
        $msgto = intval($uid);
    } else {
        if (!empty($msgtos)) {
            $buddynum = uc_friend_totalnum($discuz_uid, 3);
            $buddyarray = uc_friend_ls($discuz_uid, 1, $buddynum, $buddynum, 3);
            $uids = array();
            foreach ($buddyarray as $buddy) {
                $uids[] = $buddy['friendid'];
            }
            $msgto = $p = '';
            foreach ($msgtos as $uid) {
                $msgto .= in_array($uid, $uids) ? $p . $uid : '';
                $p = ',';
            }
            if (!$msgto) {
                showmessage('pm_send_nonexistence');
            }
        } else {
            if (!($uid = $db->result_first("SELECT uid FROM {$tablepre}members WHERE username='******'"))) {
 *
 * 列出好友的 Example 代码
 * 使用到的接口函数:
 * uc_friend_totalnum()	必须,返回好友总数
 * uc_friend_ls()	必须,返回好友列表
 * uc_friend_delete()	必须,删除好友
 * uc_friend_add()	必须,添加好友
 */
require_once './config.inc.php';
include './cta_client/client.php';
include './include/cookie.php';
if (empty($_POST['fun'])) {
    switch ($_POST['fun']) {
        case 'add':
            if ($_POST['newfriend'] && ($friendid = uc_get_user($_POST['newfriend']))) {
                uc_friend_add($Cta_uid, $friendid[0], $_POST['newcomment']);
            }
            break;
        case 'del':
            if (!empty($_POST['delete']) && is_array($_POST['delete'])) {
                uc_friend_delete($Cta_uid, $_POST['delete']);
            }
            break;
        case 'frtn':
            $num = uc_friend_totalnum($Cta_uid);
            break;
        case 'frls':
            $friendlist = uc_friend_ls($Cta_uid, 1, 999, $num);
            break;
    }
}
Example #11
0
	'page_url' => 'userapp.php?view='.$view
);

$apps = $myapps;
$query = $db->query("SELECT appid FROM {$tablepre}userapp WHERE uid='$discuz_uid' AND allowfeed='0'");
if($db->num_rows($query)) {
	while($userapp = $db->fetch_array($query)) {
		unset($apps[$userapp['appid']]);
	}
	$conf['appid'] = array_keys($apps);
}

if($view == 'me') {
	$conf['uid'] = $discuz_uid;
} elseif($view == 'friend') {
	$friendnum = uc_friend_totalnum($discuz_uid, 3);
	$friends = uc_friend_ls($discuz_uid, 1, $friendnum, $friendnum, 3);
	foreach($friends as $friend) {
		$conf['uid'][] = $friend['friendid'];
	}
}

$now = $timestamp + $timeoffset * 3600;
$day1 = gmdate($dateformat, $now);
$day2 = gmdate($dateformat, $now - 86400);
$day3 = gmdate($dateformat, $now - 172800);

$feeds = get_feed($conf);
$feeddate = '';$bi = 1;
foreach($feeds['data'] as $k => $feed) {
	$trans['{addbuddy}'] = $view == 'all' && $feed['uid'] != $discuz_uid ? '<a href="my.php?item=buddylist&newbuddyid='.$feed['uid'].'&buddysubmit=yes" id="ajax_buddy_'.($bi++).'" title="Ìí¼ÓΪºÃÓÑ" onclick="ajaxmenu(this, 3000);doane(event);"><img style="vertical-align:middle" src="manyou/images/myadd.gif" /></a>' : '';
Example #12
0
		}

	}

} elseif($item == 'buddylist') {

	include_once DISCUZ_ROOT.'./uc_client/client.php';

	$buddynum = 999;
	$extratype = empty($type) ? '' : '&type=fans';

	if(!submitcheck('buddysubmit', 1)) {

		$buddylist = array();
		$friendtype = empty($type) ? 3 : 1;
		$buddynum = uc_friend_totalnum($discuz_uid, $friendtype);
		$buddies = $buddynum ? uc_friend_ls($discuz_uid, $page, $tpp, $buddynum, $friendtype) : array();
		$multipage = multi($buddynum, $tpp, $page, "my.php?item=buddylist$extratype");

		if($buddies) {
			foreach($buddies as $key => $buddy) {
				$buddylist[$buddy['friendid']] = $buddy;
			}
			unset($buddies);
			$query = $db->query("SELECT m.uid, m.gender, mf.msn, s.uid AS online FROM {$tablepre}members m
				LEFT JOIN {$tablepre}sessions s ON s.uid=m.uid
				LEFT JOIN {$tablepre}memberfields mf ON mf.uid=m.uid
				WHERE m.uid IN (".implodeids(array_keys($buddylist)).")");
			while($member = $db->fetch_array($query)) {
				if(isset($buddylist[$member['uid']])) {
					$buddylist[$member['uid']]['avatar'] = discuz_uc_avatar($member['uid'], 'small');
Example #13
0
function find_buddy($ids)
{
    global $_SGLOBAL, $_IMC, $space, $groups;
    $ids = ids_array($ids);
    //删除自己
    $ids = ids_except($space['uid'], $ids);
    if (empty($ids)) {
        return array();
    }
    $ids = join(',', $ids);
    $buddies = array();
    ////
    include_once DISCUZ_ROOT . './uc_client/client.php';
    $buddynum = uc_friend_totalnum($space['uid']);
    $buddies = uc_friend_ls($space['uid'], 1, $buddynum, $buddynum);
    if ($buddies) {
        foreach ((array) $buddies as $key => $buddy) {
            $buddylist[$buddy['friendid']] = $buddy;
        }
        unset($buddies);
    }
    //
    $query = $_SGLOBAL['db']->query("SELECT m.uid, m.username,nickname FROM " . tname('members') . "  m left join " . tname('memberfields') . " mf  on m.uid=mf.uid WHERE  m.uid IN ({$ids})");
    ////
    /*$query = $_SGLOBAL['db']-> query("SELECT main.uid, main.username, main.name, f.gid, f.fuid
      FROM ".tname('space')." main
      LEFT OUTER JOIN ".tname('friend')." f ON f.uid = '$space[uid]' AND main.uid = f.fuid
      WHERE main.uid IN ($ids)");*/
    while ($value = $_SGLOBAL['db']->fetch_array($query)) {
        //realname_set($value['uid'], to_utf8($value['username']));
        $id = $value['uid'];
        $nick = nick($value);
        ///
        $group = in_array($value['uid'], array_keys($buddylist)) ? 'friend' : 'stranger';
        ///
        /*$group = empty($value['fuid']) ? "stranger" : null; 
          if(empty($value['fuid'])){
                  $group = "stranger";
          }else{
                  $gid = $value['gid'];
                  $group = (empty($gid) || empty($groups[$gid])) ? "friend" : $groups[$gid];
          }*/
        //$jid = $id.'@'.$_IMC['domain'];
        //$status_time = empty($value['dateline'])?'':sgmdate('n月j日',$value['dateline'],1);
        $buddies[$id] = array('id' => $id, 'name' => to_utf8($nick), 'pic_url' => avatar($id, 'small', true), 'status' => '', 'status_time' => '', 'url' => 'space.php?uid=' . $id, 'group' => $group);
    }
    return $buddies;
}
Example #14
0
 /**
  * 获取好友个数
  * @param $uid
  * @param int $direction 好友关系标示,1:A加B为好友 2:B加了A为好友 3:A和B彼此都加为了好友
  * @return mixed
  */
 public function friend_totalnum($uid, $direction = 0)
 {
     return uc_friend_totalnum($uid, $direction);
 }