本文整理汇总了PHP中Posts::userRating方法的典型用法代码示例。如果您正苦于以下问题:PHP Posts::userRating方法的具体用法?PHP Posts::userRating怎么用?PHP Posts::userRating使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Posts
的用法示例。
在下文中一共展示了Posts::userRating方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: from_user
public static function from_user($uid, stdClass $config)
{
$where = "";
if (property_exists($config, 'min')) {
$where .= " AND p.id < '{$config->min}'";
}
if (property_exists($config, 'max')) {
$where .= " AND p.id < '{$config->max}'";
}
Phalanx::loadClasses('Posts', 'PostComments', 'PostCategory');
$m = Model::Factory('posts p', true, 120);
$m->fields('DISTINCT p.id AS id', 'p.user_id AS user_id', 'p.content AS content', 'p.date AS date', 'p.title AS title', 'p.like_count AS likes', 'p.dislike_count AS dislikes', 'p.comment_count AS comments', 'p.reply_count AS replies', 'u.name AS name', 'u.login AS user', 'ud.avatar AS avatar');
$m->innerJoin('user u', 'u.id = p.user_id');
$m->leftJoin('user_data ud', 'ud.user_id = p.user_id');
$m->innerJoin('favorites f', 'f.posts_id = p.id');
$m->order('p.date DESC');
$m->where("f.user_id='{$uid}' AND wp_posts_ID IS NULL AND p.status=1 {$where}");
$m->limit(NUMBER_OF_POSTS_LOADED_PER_TIME);
$data = $m->all();
$ret = array();
foreach ($data as $v) {
$o = new stdClass();
$o->date = Date::RelativeTime($v->date);
$o->id = $v->id;
$o->name = $v->name;
$o->title = $v->title;
$o->avatar = $v->avatar;
$o->user_id = $v->user_id;
$o->rating = new stdClass();
$o->rating->megaboga = $v->likes;
$o->rating->whatever = $v->dislikes;
$o->my_rating = Posts::userRating($uid, $v->id);
$o->content = trim($v->content);
$o->comments = $v->comments;
$o->replies = $v->replies;
$o->user = $v->user;
$o->categories = PostCategory::from_post($v->id);
$o->is_favorite = true;
$ret[] = $o;
}
return $ret;
}
示例2: build_from_list
public static function build_from_list($uid, $list_id, stdClass $config)
{
Phalanx::loadClasses('Friendship');
$friends_ids = Friendship::get_friend_array($uid);
$friends_ids = implode(', ', $friends_ids);
$where = "";
if (property_exists($config, 'min')) {
$where .= " AND p.id < '{$config->min}'";
}
if (property_exists($config, 'max')) {
$where .= " AND p.id < '{$config->max}'";
}
Phalanx::loadClasses('Lists', 'SocialNetwork', 'Facebook', 'Twitter', 'twitteroauth', 'Instagram', 'PostCategory', 'Favorites', 'Profile');
$list = Lists::from_user($uid, $list_id);
$categories = array();
foreach ($list->categories as $category) {
$categories[] = $category->id;
}
if (sizeof($categories) > 0) {
Phalanx::loadClasses('Posts', 'PostComments');
$categories_ids = implode("', '", $categories);
$custom_tl = array();
$m = Model::Factory('posts p', false, 0);
$m->fields('DISTINCT p.id AS id', 'p.original_posts_id AS original_id', 'p.user_id AS user_id', 'p.content AS content', 'p.date AS date', 'p.title AS title', 'p.promoted AS promoted', 'u.name AS name', 'u.login AS user', 'ud.avatar AS avatar', 'p.like_count AS likes', 'p.dislike_count AS dislikes', 'p.comment_count AS comments', 'p.reblog_count AS reblogs', 'p.reply_count AS replies');
$m->innerJoin('user u', 'u.id = p.user_id');
$m->innerJoin('user_data ud', 'ud.user_id = p.user_id');
$m->innerJoin('posts_has_category phc', 'p.id = phc.posts_id');
$m->where("p.user_id IN({$friends_ids}) AND phc.category_id IN ('{$categories_ids}') {$where} AND u.banned IS NULL AND p.status=1 AND p.date > DATE_SUB(NOW(), INTERVAL 1 MONTH)");
# $m->group("p.original_posts_id");
$m->order('p.id DESC');
$m->limit(NUMBER_OF_POSTS_LOADED_PER_TIME);
$skynerd_posts = $m->all();
foreach ($skynerd_posts as $each) {
$o = new stdClass();
$o->date = Date::RelativeTime($each->date);
$o->id = $each->id;
$o->user = $each->user;
$o->name = $each->name;
$o->title = $each->title;
$o->avatar = $each->avatar;
$o->user_id = $each->user_id;
$o->rating = new stdClass();
$o->rating->megaboga = $each->likes;
$o->rating->whatever = $each->dislikes;
$o->my_rating = Posts::userRating($uid, $each->id);
$o->content = trim($each->content);
$o->comments = $v->comments;
$o->replies = $v->replies;
$o->categories = PostCategory::from_post($each->id);
$o->is_reblogged = Posts::userHasReblogged($each->id, $uid);
$o->is_favorite = Favorites::is_favorite($uid, $each->id);
$o->user_points = Profile::experience($v->user_id);
$o->promoted = (bool) $each->promoted;
if (!empty($o->original_id)) {
//Se o post for um reblog, então o conteúdo dele deve ser o do reblogado, mostrando as ações
$originalPost = Posts::from_user(false, $o->original_id);
$originalPost = reset($originalPost);
$o->content = $originalPost->content;
$o->title = $originalPost->title;
$o->reblogged_from = $originalPost->user;
$o->original_date = $originalPost->date;
$o->rating->reblog_count = $originalPost->rating->reblog_count;
$o->is_reblogged = Posts::userHasReblogged($originalPost->id, $uid);
}
$custom_tl[] = $o;
}
}
return $custom_tl;
}