public function operate() { $nodeId = Input::get('node_id'); $operateType = Input::get('operate_type'); $userId = Auth::user()->id; $userNode = UserNode::whereRaw("`user_id` = {$userId} and `node_id` = {$nodeId}")->get(); if ($operateType == 'follow' && empty($userNode->id)) { $userNode = new UserNode(); $userNode->user_id = $userId; $userNode->node_id = $nodeId; $userNode->save(); } elseif (!empty($userNode->id)) { $userNode->delete(); } echo json_encode(array('errNo' => Config::get('common.err_no.success'), 'errMsg' => Config::get('common.err_msg.success'))); }
public static function nodeIds($userId) { $userNode = UserNode::where('user_id', '=', $userId)->get(); $result = array(); foreach ($userNode as $node) { array_push($result, $node->node_id); } return $result; }
public static function userLevelUp($userId) { $userNode = UserNode::nodeIds($userId); $userNodeIds = implode(',', $userNode); $nodes = Node::whereRaw("id in ({$userNodeIds})")->get(); $result = $top = array(); foreach ($nodes as $key => $node) { if (!in_array($node->parent_node, $top)) { array_push($top, $node->parent_node); } $result['second'][$node->parent_node][] = $node; } $topIds = implode(',', $top); $topNodes = Node::whereRaw("id in ({$topIds})")->get(); foreach ($topNodes as $tkey => $tnode) { $result['top'][] = $tnode; } return $result; }
public function node() { $userId = Auth::user()->id; $userNode = UserNode::nodeIds($userId); $nodes = Node::allLevelUp(); return View::make('nodes.node', compact('userNode', 'nodes')); }