<?php $page = "wall_action"; include "header.php"; if (isset($_POST['id'])) { $action_id = $_POST['id']; } elseif (isset($_GET['id'])) { $action_id = $_GET['id']; } $where_clause = he_database::placeholder("se_actions.action_id=?", $action_id); $wall_action = he_wall::actions_display(0, $setting['setting_actions_actionsonprofile'], $where_clause); $wall_action = $wall_action[0]; if (!$setting['setting_he_wall_guest_view'] && $user->level_info['level_wall_allowed'] == 0) { $page = "error"; $smarty->assign('error_header', 639); $smarty->assign('error_message', 690706102); $smarty->assign('error_submit', 641); include "footer.php"; } $action_info = he_wall::get_action_info($action_id); if (!$action_info) { he_wall::delete_action_notify($action_id); } if (!$wall_action) { $page = "error"; $smarty->assign('error_header', 639); $smarty->assign('error_message', 690706081); $smarty->assign('error_submit', 641); include "footer.php"; } $action_wall_owner = he_wall::get_wall_owner($action_info['action_object_owner'], $action_info['action_object_owner_id']);
function he_wall_actions_display($wall_object, $wall_object_id, $first_id = false, $last_id = false) { global $user, $setting, $smarty; $setting_actions_visibility = 0; $setting_actions_actionsper = $setting['setting_actions_actionsonprofile']; if ($wall_object == 'user') { $owner = new se_user(array($wall_object_id)); $actiontype_ids = he_wall::get_actiontype_ids(); $actiontype_ids_str = implode(',', $actiontype_ids); $where_clause .= "\r\n IF ( \r\n se_actions.action_actiontype_id IN ({$actiontype_ids_str}),\r\n ( se_actions.action_object_owner='user' AND se_actions.action_object_owner_id='{$owner->user_info['user_id']}'),\r\n se_actions.action_user_id='{$owner->user_info['user_id']}'\r\n )\r\n "; } elseif ($wall_object == 'userhome') { $owner = new se_user(array($wall_object_id)); $setting_actions_visibility = 10; $setting_actions_actionsper = $setting['setting_actions_actionsperuser']; $where_clause .= "1"; } elseif ($wall_object == 'group') { $owner = new se_group($user->user_info['user_id'], $wall_object_id); $privacy_max = $owner->user_rank; $allow_post = (int) ($privacy_max != -1); $setting_actions_visibility = 10; $setting_actions_actionsper = $setting['setting_actions_actionsonprofile']; $where_clause .= "se_actions.action_object_owner='group' AND se_actions.action_object_owner_id='{$wall_object_id}'"; } elseif ($wall_object == 'pages') { $setting_actions_visibility = 10; $where_clause .= " se_actions.action_object_owner='pages' AND se_actions.action_object_owner_id='{$wall_object_id}'"; } else { $where_clause .= ''; } $hidden_action_ids = he_wall::get_hidden_actions($user->user_info['user_id']); if ($hidden_action_ids) { $where_clause .= $where_clause != '' ? " AND " : ''; $where_clause .= " se_actions.action_id NOT IN (" . implode(',', $hidden_action_ids) . ")"; } $wall_actions = he_wall::actions_display($setting_actions_visibility, $setting_actions_actionsper, $where_clause, $last_id, $first_id); $action_owner_ids = array(); foreach ($wall_actions as $key => $wall_action) { $action_owner_ids[] = $wall_action['action_user_id']; } $action_owner_ids = array_unique($action_owner_ids); $action_owners = he_wall::get_users($action_owner_ids); $action_ids = array(); foreach ($wall_actions as $key => $wall_action) { $action_ids[] = $wall_action['action_id']; $wall_actions[$key]['owner'] = $action_owners[$wall_action['action_user_id']]; } $action_likes = he_wall::get_likes($action_ids); $action_comments = he_wall::get_comments($action_ids); $video_actiontype_id = he_wall::video_actiontype_id(); $smarty->assign('wall_actions', $wall_actions); $smarty->assign('action_likes', $action_likes); $smarty->assign('action_comments', $action_comments); $smarty->assign('video_actiontype_id', $video_actiontype_id); return array('action_ids' => $action_ids, 'html' => he_wall_include_footer_logic('he_wall_actions.tpl')); }