include "header.php";
if (isset($_POST['task'])) {
    $task = $_POST['task'];
} elseif (isset($_GET['task'])) {
    $task = $_GET['task'];
} else {
    $task = "main";
}
// ENSURE GROUPS ARE ENABLED FOR THIS USER
if (~(int) $user->level_info['level_group_allow'] & 2) {
    header("Location: user_home.php");
    exit;
}
// SET VARIABLES AND INITIALIZE GROUP OBJECT
$group = new se_group($user->user_info['user_id']);
$sort_by = "se_groupmembers.groupmember_rank DESC, se_groups.group_title";
$where = "(se_groupmembers.groupmember_status='1')";
// GET TOTAL GROUPS
$total_groups = $group->group_total($where);
// GET GROUPS ARRAY
$group_array = $group->group_list(0, $total_groups, $sort_by, $where, 1);
// GET GROUPS INVITED TO
$invite_where = "(se_groupmembers.groupmember_status='0' AND se_groupmembers.groupmember_approved='1')";
$total_invites = $group->group_total($invite_where);
$invite_array = $group->group_list(0, $total_invites, $sort_by, $invite_where, 1);
// ASSIGN VARIABLES AND SHOW VIEW GROUPS PAGE
$smarty->assign('groups', $group_array);
$smarty->assign('total_groups', $total_groups);
$smarty->assign('invites', $invite_array);
$smarty->assign('total_invites', $total_invites);
include "footer.php";
if ($f_owner != "") {
    $where_clause[] = "(se_users.user_username LIKE '%{$f_owner}%' OR se_users.user_fname LIKE '%{$f_owner}%' OR se_users.user_lname LIKE '%{$f_owner}%' OR CONCAT(se_users.user_fname, ' ', se_users.user_lname) LIKE '%{$f_owner}%')";
}
if ($f_title != "") {
    $where_clause[] = "se_groups.group_title LIKE '%{$f_title}%'";
}
if (count($where_clause) != 0) {
    $where = "(" . implode(" AND ", $where_clause) . ")";
}
// DELETE NECESSARY GROUPS
$start = ($p - 1) * $groups_per_page;
if ($task == "delete") {
    $group->group_delete_selected($start, $groups_per_page, $sort, $where);
}
// GET TOTAL GROUPS
$total_groups = $group->group_total($where, 1);
// MAKE GROUP PAGES
$page_vars = make_page($total_groups, $groups_per_page, $p);
$page_array = array();
for ($x = 0; $x <= $page_vars[2] - 1; $x++) {
    if ($x + 1 == $page_vars[1]) {
        $link = "1";
    } else {
        $link = "0";
    }
    $page_array[$x] = array('page' => $x + 1, 'link' => $link);
}
// GET GROUP ARRAY
$groups = $group->group_list($page_vars[0], $groups_per_page, $sort, $where, 1);
// ASSIGN VARIABLES AND SHOW VIEW GROUPS PAGE
$smarty->assign('total_groups', $total_groups);
$group_info['group_desc'] = "";
$group_info['group_groupcat_id'] = 0;
$group_info['group_groupsubcat_id'] = 0;
$group_info['group_approval'] = 0;
$group_info['group_invite'] = 1;
$group_info['group_search'] = 1;
$group_info['group_privacy'] = $level_group_privacy[0];
$group_info['group_comments'] = $level_group_comments[0];
$group_info['group_discussion'] = $level_group_discussion[0];
$group_info['group_upload'] = $level_group_upload[0];
$groupalbum_info['groupalbum_tag'] = $level_group_tag[0];
// INITIALIZE GROUP OBJECT
$group = new se_group($user->user_info['user_id'], 0);
// CHECK TO MAKE SURE USER HAS LESS THAN MAX NUMBER OF GROUPS ALLOWED
$owned_where = "(se_groups.group_user_id='{$user->user_info['user_id']}')";
$total_groups_owned = $group->group_total($owned_where);
if ($total_groups_owned >= $user->level_info['level_group_maxnum']) {
    $is_error = 2000114;
    $task = "main";
}
// ATTEMPT TO ADD GROUP
if ($task == "doadd") {
    $group_info['group_title'] = censor($_POST['group_title']);
    $group_info['group_desc'] = censor(str_replace("\r\n", "<br>", $_POST['group_desc']));
    $group_info['group_approval'] = $_POST['group_approval'];
    $group_info['group_invite'] = $_POST['group_invite'];
    $group_info['group_search'] = $_POST['group_search'];
    $group_info['group_privacy'] = $_POST['group_privacy'];
    $group_info['group_comments'] = $_POST['group_comments'];
    $group_info['group_discussion'] = $_POST['group_discussion'];
    $group_info['group_upload'] = $_POST['group_upload'];