getArray("pm_prefs"); //pm_prefs record not found in core table, set to defaults and create record if(!is_array($pm_prefs)) { require_once(e_PLUGIN."pm/pm_default.php"); $pm_prefs = pm_set_default_prefs(); $sysprefs->setArray('pm_prefs'); $message = ADLAN_PM_3; } $lan_file = e_PLUGIN."pm/languages/admin/".e_LANGUAGE.".php"; include_once(is_readable($lan_file) ? $lan_file : e_PLUGIN."pm/languages/admin/English.php"); if (isset($_POST['update_prefs'])) { foreach($_POST['option'] as $k => $v) { $pm_prefs[$k] = $v; } $sysprefs->setArray('pm_prefs'); $message = ADLAN_PM_4; } if(isset($_POST['addlimit'])) { if($sql->db_Select('generic','gen_id',"gen_type = 'pm_limit' AND gen_datestamp = {$_POST['newlimit_class']}")) { $message = ADLAN_PM_5; } else { if($sql->db_Insert('generic',"0, 'pm_limit', '{$_POST['newlimit_class']}', '{$_POST['new_inbox_count']}', '{$_POST['new_outbox_count']}', '{$_POST['new_inbox_size']}', '{$_POST['new_outbox_size']}'")) { $message = ADLAN_PM_6; } else { $message = ADLAN_PM_7; } } } if(isset($_POST['updatelimits'])) { if($pref['pm_limits'] != $_POST['pm_limits']) { $pref['pm_limits'] = $_POST['pm_limits']; save_prefs(); $message .= ADLAN_PM_8."
"; } foreach(array_keys($_POST['inbox_count']) as $id) { if($_POST['inbox_count'][$id] == "" && $_POST['outbox_count'][$id] == "" && $_POST['inbox_size'][$id] == "" && $_POST['outbox_size'][$id] == "") { //All entries empty - Remove record if($sql->db_Delete('generic',"gen_id = {$id}")) { $message .= $id.ADLAN_PM_9."
"; } else { $message .= $id.ADLAN_PM_10."
"; } } else { $sql->db_Update('generic',"gen_user_id = '{$_POST['inbox_count'][$id]}', gen_ip = '{$_POST['outbox_count'][$id]}', gen_intdata = '{$_POST['inbox_size'][$id]}', gen_chardata = '{$_POST['outbox_size'][$id]}' WHERE gen_id = {$id}"); $message .= $id.ADLAN_PM_11."
"; } } } if(isset($message)) { $ns->tablerender("", $message); } if($action == "main") { $ns->tablerender(ADLAN_PM_12, show_options()); } if($action == "limits") { $ns->tablerender(ADLAN_PM_14, show_limits()); $ns->tablerender(ADLAN_PM_15, add_limit()); } require_once(e_ADMIN."footer.php"); function yes_no($fname) { global $pm_prefs; $ret = form::form_radio("option[{$fname}]", "1", ($pm_prefs[$fname] ? "1" : "0"), "", "").LAN_YES." ". form::form_radio("option[{$fname}]", "0", ($pm_prefs[$fname] ? "0" : "1"), "", "").LAN_NO; return $ret; } function show_options() { global $pm_prefs; $txt = "
".ADLAN_PM_16." ".form::form_text('option[title]', 20, $pm_prefs['title'], 50)."
".ADLAN_PM_17." ".yes_no('animate')."
".ADLAN_PM_18." ".yes_no('dropdown')."
".ADLAN_PM_19." ".form::form_text('option[read_timeout]', 5, $pm_prefs['read_timeout'], 5)."
".ADLAN_PM_20." ".form::form_text('option[unread_timeout]', 5, $pm_prefs['unread_timeout'], 5)."
".ADLAN_PM_21." ".yes_no('popup')."
".ADLAN_PM_22." ".form::form_text('option[popup_delay]', 5, $pm_prefs['popup_delay'], 5)." ".ADLAN_PM_44."
".ADLAN_PM_23." ".r_userclass('option[pm_class]', $pm_prefs['pm_class'], 'off', 'members, admin, classes')."
".ADLAN_PM_24." ".form::form_text('option[perpage]', 5, $pm_prefs['perpage'], 5)."
".ADLAN_PM_25." ".r_userclass('option[notify_class]', $pm_prefs['notify_class'], 'off', 'nobody, members, admin, classes')."
".ADLAN_PM_26." ".r_userclass('option[receipt_class]', $pm_prefs['receipt_class'], 'off', 'nobody, members, admin, classes')."
".ADLAN_PM_27." ".r_userclass('option[attach_class]', $pm_prefs['attach_class'], 'off', 'nobody, members, admin, classes')."
".ADLAN_PM_28." ".form::form_text('option[attach_size]', 8, $pm_prefs['attach_size'], 8)." kB
".ADLAN_PM_29." ".r_userclass('option[sendall_class]', $pm_prefs['sendall_class'], 'off', 'nobody, members, admin, classes')."
".ADLAN_PM_30." ".r_userclass('option[multi_class]', $pm_prefs['multi_class'], 'off', 'nobody, members, admin, classes')."
".ADLAN_PM_31." ".yes_no('allow_userclass')."
"; return $txt; } function show_limits() { global $sql, $pref; if($sql->db_Select('userclass_classes','userclass_id, userclass_name')) { $classList = $sql->db_getList(); } if($sql->db_Select("generic", "gen_id as limit_id, gen_datestamp as limit_classnum, gen_user_id as inbox_count, gen_ip as outbox_count, gen_intdata as inbox_size, gen_chardata as outbox_size", "gen_type = 'pm_limit'")) { while($row = $sql->db_Fetch()) { $limitList[$row['limit_classnum']] = $row; } } $txt = "
"; if (isset($limitList)) { foreach($limitList as $row) { $txt .= " "; } } else { $txt .= " "; } $txt .= " "; $txt .= "
".ADLAN_PM_45." \n"; $txt .= "
".ADLAN_PM_36." ".ADLAN_PM_37." ".ADLAN_PM_38."
".r_userclass_name($row['limit_classnum'])." ".ADLAN_PM_39." ".ADLAN_PM_40." ".ADLAN_PM_39." ".ADLAN_PM_40."
".ADLAN_PM_41."
"; return $txt; } function add_limit() { global $sql, $pref; if($sql->db_Select('userclass_classes','userclass_id, userclass_name')) { $classList = $sql->db_getList(); } if($sql->db_Select("generic", "gen_id as limit_id, gen_datestamp as limit_classnum, gen_user_id as inbox_count, gen_ip as outbox_count, gen_intdata as inbox_size, gen_chardata as outbox_size", "gen_type = 'pm_limit'")) { while($row = $sql->db_Fetch()) { $limitList[$row['limit_classnum']] = $row; } } $txt = "
"; $txt .= " "; $txt .= "
".ADLAN_PM_36." ".ADLAN_PM_37." ".ADLAN_PM_38."
".r_userclass("newlimit_class", 0, "off", "guest, member, admin, classes, language")." ".ADLAN_PM_39." ".ADLAN_PM_40." ".ADLAN_PM_39." ".ADLAN_PM_40."
"; return $txt; } function show_menu($action) { global $sql; if ($action == "") { $action = "main"; } $var['main']['text'] = ADLAN_PM_54; $var['main']['link'] = e_SELF; $var['limits']['text'] = ADLAN_PM_55; $var['limits']['link'] = e_SELF."?limits"; show_admin_menu(ADLAN_PM_12, $action, $var); } function pm_conf_adminmenu() { global $action; show_menu($action); } ?>