/** * @param EasySCP_TemplateEngine $tpl * @param EasySCP_Database $sql * @param int $dmn_id */ function gen_user_assign($tpl, $sql, &$dmn_id) { if (isset($_GET['uname']) && $_GET['uname'] !== '' && is_numeric($_GET['uname'])) { $uuser_id = $_GET['uname']; $tpl->assign('UNAME', tohtml(get_htuser_name($sql, $uuser_id, $dmn_id))); $tpl->assign('UID', $uuser_id); } else { if (isset($_POST['nadmin_name']) && !empty($_POST['nadmin_name']) && is_numeric($_POST['nadmin_name'])) { $uuser_id = $_POST['nadmin_name']; $tpl->assign('UNAME', tohtml(get_htuser_name($sql, $uuser_id, $dmn_id))); $tpl->assign('UID', $uuser_id); } else { user_goto('protected_user_manage.php'); } } // get groups $query = "\n\t\tSELECT\n\t\t\t*\n\t\tFROM\n\t\t\t`htaccess_groups`\n\t\tWHERE\n\t\t\t`dmn_id` = ?\n\t"; $rs = exec_query($sql, $query, $dmn_id); if ($rs->recordCount() == 0) { set_page_message(tr('You have no groups!'), 'info'); user_goto('protected_user_manage.php'); } else { $added_in = 0; $not_added_in = 0; while (!$rs->EOF) { $group_id = $rs->fields['id']; $group_name = $rs->fields['ugroup']; $members = $rs->fields['members']; $members = explode(",", $members); $grp_in = 0; // let's generete all groups wher the user is assigned for ($i = 0, $cnt_members = count($members); $i < $cnt_members; $i++) { if ($uuser_id == $members[$i]) { $tpl->append(array('GRP_IN' => tohtml($group_name), 'GRP_IN_ID' => $group_id)); $grp_in = $group_id; $added_in++; } } if ($grp_in !== $group_id) { $tpl->append(array('GRP_NAME' => tohtml($group_name), 'GRP_ID' => $group_id)); $not_added_in++; } $rs->moveNext(); } // generate add/remove buttons if ($added_in != 0) { $tpl->assign('IN_GROUP', true); } if ($not_added_in != 0) { $tpl->assign('NOT_IN_GROUP', true); } } }
function gen_user_assign(&$tpl, &$sql, &$dmn_id) { if (isset($_GET['uname']) && $_GET['uname'] !== '' && is_numeric($_GET['uname'])) { $user_id = $_GET['uname']; $tpl->assign('UNAME', get_htuser_name($sql, $user_id, $dmn_id)); $tpl->assign('UID', $user_id); } else { if (isset($_POST['nadmin_name']) && $_POST['nadmin_name'] !== '' && is_numeric($_POST['nadmin_name'])) { $user_id = $_POST['nadmin_name']; $tpl->assign('UNAME', get_htuser_name($sql, $user_id, $dmn_id)); $tpl->assign('UID', $user_id); } else { header('Location: puser_manage.php'); die; } } // get groups $query = <<<SQL_QUERY select * from htaccess_groups where dmn_id = ? SQL_QUERY; $rs = exec_query($sql, $query, array($dmn_id)); if ($rs->RecordCount() == 0) { set_page_message(tr('You have no groups!')); header('Location: puser_manage.php'); die; } else { $added_in = 0; $not_added_in = 0; while (!$rs->EOF) { $group_id = $rs->fields['id']; $group_name = $rs->fields['ugroup']; $members = $rs->fields['members']; $members = explode(",", $members); $grp_in = 0; // lets generete all groups wher the user is assignet for ($i = 0; $i < count($members); $i++) { if ($user_id == $members[$i]) { $tpl->assign(array('GRP_IN' => $group_name, 'GRP_IN_ID' => $group_id)); $tpl->parse('ALREADY_IN', '.already_in'); $grp_in = $group_id; $added_in++; } } if ($grp_in !== $group_id) { $tpl->assign(array('GRP_NAME' => $group_name, 'GRP_ID' => $group_id)); $tpl->parse('GRP_AVLB', '.grp_avlb'); $not_added_in++; } $rs->MoveNext(); } //generate add/remove buttons if ($added_in < 1) { $tpl->assign('ALREADY_IN', ''); $tpl->assign('REMOVE_BUTTON', ''); } if ($not_added_in < 1) { $tpl->assign('GRP_AVLB', ''); $tpl->assign('ADD_BUTTON', ''); } } }