function controlToHTML($name) { // First, grab the data for the users if (!defined("SYS_USERS")) { require_once BASE . "subsystems/users.php"; } $users = array(); foreach (pathos_users_getAllUsers() as $u) { $users[$u->id] = $u->firstname . " " . $u->lastname . ' (' . $u->username . ')'; } uasort($users, 'strnatcmp'); $html = "<script type='text/javascript' src='" . PATH_RELATIVE . "js/ContactControl.js'></script>"; $html .= "<table cellpadding='0' cellspacing='0' border='0'><tr><td>"; $html .= '<input type="radio" id="r_' . $name . '_users" name="' . $name . '_type" value="0" onClick="activateContactControl(0,\'' . $name . '\');" />User:'******'<select name="' . $name . '[0]" id="' . $name . '_users">'; foreach ($users as $id => $uname) { $html .= '<option '; if ($this->default == $id && $this->type == 0) { $html .= 'selected '; } $html .= 'value="' . $id . '">' . $uname . '</option>'; } $html .= '</select>'; $html .= '</td></tr><tr><td>'; $html .= '<input type="radio" id="r_' . $name . '_email" name="' . $name . '_type" value="1" onClick="activateContactControl(1,\'' . $name . '\');" />Email:'; $html .= '<input type="text" name="' . $name . '[1]" id="' . $name . '_email" '; if ($this->type == 1) { $html .= 'value="' . $this->default . '" '; } $html .= '/>'; $html .= '</td></tr></table>'; $html .= '<script type="text/javascript">activateContactControl(' . $this->type . ',"' . $name . '");</script>'; return $html; }
function form($object) { pathos_lang_loadDictionary('modules', 'inboxmodule'); pathos_lang_loadDictionary('standard', 'core'); if (!defined('SYS_FORMS')) { require_once BASE . 'subsystems/forms.php'; } pathos_forms_initialize(); $form = new form(); if (!defined('SYS_USERS')) { require_once BASE . 'subsystems/users.php'; } $users = array(); foreach (pathos_users_getAllUsers() as $u) { $users[$u->id] = $u->firstname . ' ' . $u->lastname . ' (' . $u->username . ')'; } global $db, $user; foreach ($db->selectObjects('inbox_contactbanned', 'owner=' . $user->id) as $b) { unset($users[$b->user_id]); } $form->register('uid', TR_INBOXMODULE_USER, new dropdowncontrol(0, $users)); $form->register('submit', '', new buttongroupcontrol(TR_INBOXMODULE_BLOCKUSER, '', TR_CORE_CANCEL)); return $form; }
function form($object) { pathos_lang_loadDictionary('modules', 'inboxmodule'); pathos_lang_loadDictionary('standard', 'core'); if (!defined('SYS_FORMS')) { require_once BASE . 'subsystems/forms.php'; } pathos_forms_initialize(); $form = new form(); $users = array(); $groups = array(); global $db, $user; if (!defined('SYS_USERS')) { require_once BASE . 'subsystems/users.php'; } if (pathos_permissions_check('contact_all', pathos_core_makeLocation('inboxmodule'))) { foreach (pathos_users_getAllUsers() as $u) { $users[$u->id] = $u->firstname . ' ' . $u->lastname . ' (' . $u->username . ')'; } } else { foreach (pathos_users_getGroupsForUser($user, 1, 0) as $g) { foreach (pathos_users_getUsersInGroup($g) as $u) { $users[$u->id] = $u->firstname . ' ' . $u->lastname . ' (' . $u->username . ')'; } } } // Process other uses who the current user has blocked, and remove them from the list // Process other users who have blocked the current user, and remove them from the list. foreach ($db->selectObjects('inbox_contactbanned', 'owner=' . $user->id . ' OR user_id=' . $user->id) as $blocked) { if ($blocked->user_id == $user->id) { // Blocked by someone else. Remove the owner (user who blocked us) unset($users[$blocked->owner]); } else { if ($blocked->owner == $user->id) { // We blocked the user, remove the blocked user_id unset($users[$blocked->user_id]); } } } uasort($users, 'strnatcmp'); $groups = array(); foreach ($db->selectObjects('inbox_contactlist', 'owner=' . $user->id) as $g) { $groups['list_' . $g->id] = $g->name . ' ' . TR_INBOXMODULE_PERSONALLIST; } if (pathos_permissions_check('contact_all', pathos_core_makeLocation('inboxmodule'))) { foreach (pathos_users_getAllGroups(1, 0) as $g) { $groups['group_' . $g->id] = $g->name . ' ' . TR_INBOXMODULE_SYSGROUP; } } else { foreach (pathos_users_getGroupsForUser($user, 1, 0) as $g) { $groups['group_' . $g->id] = $g->name . ' ' . TR_INBOXMODULE_SYSGROUP; } } uasort($groups, 'strnatcmp'); $recipient_caption = TR_INBOXMODULE_RECIPIENT; $group_recipient_caption = TR_INBOXMODULE_GROUPRECIPIENT; $btn = new buttongroupcontrol(TR_INBOXMODULE_SEND, '', TR_CORE_CANCEL); $object->group_recipient = array(); if ($object == null || !isset($object->recipient)) { $object->subject = ''; $object->body = ''; $object->recipient = array(); if (!count($users) && !count($groups)) { $btn->disabled = true; } } else { if (!defined('SYS_USERS')) { require_once BASE . 'subsystems/users.php'; } $u = pathos_users_getUserById($object->recipient); $form->register(null, '', new htmlcontrol(sprintf(TR_INBOXMODULE_REPLYTO, $u->firstname . ' ' . $u->lastname . ' (' . $u->username . ')'))); $form->meta('replyto', $object->recipient); $object->recipient = array(); unset($users[$u->id]); $recipient_caption = TR_INBOXMODULE_COPYTO; $group_recipient_caption = TR_INBOXMODULE_GROUPCOPYTO; } if (count($users)) { $form->register('recipients', $recipient_caption, new listbuildercontrol($object->recipient, $users)); } if (count($groups)) { $form->register('group_recipients', $group_recipient_caption, new listbuildercontrol($object->group_recipient, $groups)); } if (!count($groups) && !count($users)) { $form->register(null, '', new htmlcontrol('<div class="error">' . TR_INBOXMODULE_NOCONTACTSWARNING . '</div>')); } $form->register('subject', TR_INBOXMODULE_SUBJECT, new textcontrol($object->subject)); $form->register('body', TR_INBOXMODULE_MESSAGE, new htmleditorcontrol($object->body)); $form->register('submit', '', $btn); return $form; }
if (pathos_template_getModuleViewFile($loc->mod, "_userpermissions", false) == TEMPLATE_FALLBACK_VIEW) { $template = new template("common", "_userpermissions", $loc); } else { $template = new template($loc->mod, "_userpermissions", $loc); } $template->assign("user_form", 1); ///////////////////////////// if (!defined("SYS_USERS")) { require_once BASE . "subsystems/users.php"; } $users = array(); $modclass = $loc->mod; $mod = new $modclass(); $perms = $mod->permissions($loc->int); $have_users = 0; foreach (pathos_users_getAllUsers(0) as $u) { $have_users = 1; foreach ($perms as $perm => $name) { $var = "perms_{$perm}"; if (pathos_permissions_checkUser($u, $perm, $loc, true)) { $u->{$var} = 1; } else { if (pathos_permissions_checkUser($u, $perm, $loc)) { $u->{$var} = 2; } else { $u->{$var} = 0; } } } $users[] = $u; }
function form($object) { pathos_lang_loadDictionary('standard', 'core'); pathos_lang_loadDictionary('modules', 'formbuilder'); global $db; if (!defined('SYS_FORMS')) { require_once BASE . 'subsystems/forms.php'; } if (!defined('SYS_USERS')) { require_once BASE . 'subsystems/users.php'; } //global $user; pathos_forms_initialize(); $form = new form(); if (!isset($object->id)) { $object->name = ''; $object->description = ''; $object->is_email = 0; $object->is_saved = 1; $object->response = 'Your form has been submitted.'; $object->resetbtn = 'Reset'; $object->submitbtn = 'Submit'; $object->subject = 'Submitted form from site.'; } else { $form->meta('id', $object->id); } $form->register('name', TR_FORMBUILDER_NAME, new textcontrol($object->name)); $form->register('description', TR_FORMBUILDER_DESCRIPTION, new texteditorcontrol($object->description)); $form->register('response', TR_FORMBUILDER_RESPONSE, new htmleditorcontrol($object->response)); $form->register(null, '', new htmlcontrol('<br><br><b>' . TR_FORMBUILDER_BUTTONHEADER . '</b><br><hr><br>')); $form->register('submitbtn', TR_FORMBUILDER_SUBMITTEXT, new textcontrol($object->submitbtn)); $form->register('resetbtn', TR_FORMBUILDER_RESETTEXT, new textcontrol($object->resetbtn)); $form->register(null, '', new htmlcontrol('<br><br><b>' . TR_FORMBUILDER_EMAILHEADER . '</b><br><hr><br>')); $form->register('is_email', TR_FORMBUILDER_EMAILFORM, new checkboxcontrol($object->is_email, false)); $userlist = array(); $users = pathos_users_getAllUsers(); foreach ($users as $locuser) { $userlist[$locuser->id] = $locuser->username; } $defaults = array(); foreach ($db->selectObjects('formbuilder_address', 'form_id=' . $object->id . ' and user_id != 0') as $address) { $locuser = pathos_users_getUserById($address->user_id); $defaults[$locuser->id] = $locuser->username; } $form->register('users', TR_FORMBUILDER_USERS, new listbuildercontrol($defaults, $userlist)); $groups = pathos_users_getAllGroups(); $grouplist = array(); $defaults = array(); foreach ($groups as $group) { $grouplist[$group->id] = $group->name; } if ($grouplist != null) { foreach ($db->selectObjects('formbuilder_address', 'form_id=' . $object->id . ' and group_id != 0') as $address) { $group = pathos_users_getGroupById($address->group_id); $defaults[$group->id] = $group->name; } $form->register('groups', TR_FORMBUILDER_GROUPS, new listbuildercontrol($defaults, $grouplist)); } $defaults = array(); foreach ($db->selectObjects('formbuilder_address', 'form_id=' . $object->id . " and email != ''") as $address) { $defaults[$address->email] = $address->email; } $form->register('addresses', TR_FORMBUILDER_OTHERADDRESSES, new listbuildercontrol($defaults, null)); $form->register('subject', TR_FORMBUILDER_EMAILSUBJECT, new textcontrol($object->subject)); $form->register(null, '', new htmlcontrol('<br><br><b>' . TR_FORMBUILDER_DBHEADER . '</b><br><hr size="1"><br>')); $form->register('is_saved', TR_FORMBUILDER_SAVETODB, new checkboxcontrol($object->is_saved, false)); $form->register(null, '', new htmlcontrol('<br> ' . TR_FORMBUILDER_DATALOSSWARNING . '<br>')); if ($object->is_saved == 1) { $form->controls['is_saved']->disabled = true; $form->meta('is_saved', '1'); } $form->register(null, '', new htmlcontrol('<br><br><br>')); $form->register('submit', '', new buttongroupcontrol(TR_CORE_SAVE, '', TR_CORE_CANCEL)); return $form; }
} $memb = $db->selectObject('groupmembership', 'member_id=' . $user->id . ' AND group_id=' . $_GET['id'] . ' AND is_admin=1'); $perm_level = 0; if ($memb) { $perm_level = 1; } if (pathos_permissions_check('user_management', pathos_core_makeLocation('administrationmodule'))) { $perm_level = 2; } if ($perm_level) { $group = $db->selectObject('group', 'id=' . $_GET['id']); if ($group != null) { if (!defined('SYS_USERS')) { require_once BASE . 'subsystems/users.php'; } $users = pathos_users_getAllUsers(0); $members = array(); $admins = array(); foreach ($db->selectObjects('groupmembership', 'group_id=' . $group->id) as $m) { $members[] = $m->member_id; if ($m->is_admin == 1) { $admins[] = $m->member_id; } } for ($i = 0; $i < count($users); $i++) { if (in_array($users[$i]->id, $members)) { $users[$i]->is_member = 1; } else { $users[$i]->is_member = 0; } if (in_array($users[$i]->id, $admins)) {
function form($object) { pathos_lang_loadDictionary('modules', 'inboxmodule'); pathos_lang_loadDictionary('standard', 'core'); if (!defined('SYS_FORMS')) { require_once BASE . 'subsystems/forms.php'; } pathos_forms_initialize(); $form = new form(); if (!isset($object->id)) { $object->name = ''; $object->description = ''; $object->_members = array(); } else { $form->meta('id', $object->id); } $form->register('name', TR_INBOXMODULE_GROUPNAME, new textcontrol($object->name)); $form->register('description', TR_INBOXMODULE_DESCRIPTION, new texteditorcontrol($object->description)); $users = array(); if (!defined('SYS_USERS')) { require_once BASE . 'subsystems/users.php'; } global $user; if (pathos_permissions_check('contact_all', pathos_core_makeLocation('inboxmodule'))) { foreach (pathos_users_getAllUsers() as $u) { $users[$u->id] = $u; } } else { foreach (pathos_users_getGroupsForUser($user, 1, 0) as $g) { foreach (pathos_users_getUsersInGroup($g) as $u) { $users[$u->id] = $u; } } } foreach (array_keys($users) as $i) { $users[$i] = $users[$i]->firstname . ' ' . $users[$i]->lastname . ' (' . $users[$i]->username . ')'; } global $db; // Process other uses who the current user has blocked, and remove them from the list // Process other users who have blocked the current user, and remove them from the list. foreach ($db->selectObjects('inbox_contactbanned', 'owner=' . $user->id . ' OR user_id=' . $user->id) as $blocked) { if ($blocked->user_id == $user->id) { // Blocked by someone else. Remove the owner (user who blocked us) unset($users[$blocked->owner]); } else { if ($blocked->owner == $user->id) { // We blocked the user, remove the blocked user_id unset($users[$blocked->user_id]); } } } $members = array(); for ($i = 0; $i < count($object->_members); $i++) { $tmp = $object->_members[$i]; $members[$tmp] = $users[$tmp]; unset($users[$tmp]); } if (count($members) || count($users)) { $form->register('members', TR_INBOXMODULE_MEMBERS, new listbuildercontrol($members, $users)); $form->register('submit', '', new buttongroupcontrol(TR_CORE_SAVE, '', TR_CORE_CANCEL)); } else { $submit = new buttongroupcontrol(TR_CORE_SAVE, '', TR_CORE_CANCEL); $submit->disabled = 1; $form->register(null, '', new htmlcontrol(TR_INBOXMODULE_NOMEMBERS)); $form->register('submit', '', $submit); } return $form; }