use Components\Classes\Roles; use Components\Classes\db; $tbl = $GUI->Table("mls_out", array("cur_sort_up" => true)); $tbl->Width = "100%"; $tbl->DataMYSQL("messages"); $tbl->FilterMYSQL("creator_id='u" . $_SESSION["user"]["data"]["id"] . "'"); $tbl->Pager(CGUI_PAGER_FLAG_SEL | CGUI_PAGER_FLAG_RR | CGUI_PAGER_FLAG_R | CGUI_PAGER_FLAG_FF | CGUI_PAGER_FLAG_F, 10, array(10, 20, 50, 100, 0)); global $n; if (Roles::isActionAllowed($GUI->mmenu->selected->id, $GUI->mmenu->selected->selected->id, $_SESSION["user"]["data"]["group_id"], "Просмотр сообщения")) { $tbl->RowEvent2 = "document.location.href=\"?section=mls&subsection=2&type=o&read=%var%\""; } $columns_resource = Roles::getColumns($GUI->mmenu->selected->id, $GUI->mmenu->selected->selected->id, $_SESSION["user"]["data"]["group_id"]); if (!is_resource($columns_resource)) { $GUI->ERR($columns_resource); page_reload(); } $new_columns = array(); $column_group_name = array(); while ($row = db::fetch_array($columns_resource)) { if ($row['group_internal_name'] != "") { $column_group_name[] = $row['group_internal_name']; $new_columns[$row['group_internal_name']]['custom'][] = $row; } else { $new_columns[] = $row; } } foreach ($new_columns as $column) { if (isset($column['internal_name']) && in_array($column['internal_name'], $column_group_name)) { continue; }
function loginform_exec($Frm, $Err) { if ($Err) { $Frm->_gui->Vars["login_message"] = "Ошибки при заполнении формы"; return; } // clr db::delete(TABLE_LOGIN_HOST, "time < " . (time() - 900)); $last_login_time = db::get_arrays("SELECT time FROM " . TABLE_LOGIN_HOST . " WHERE ip = '" . db::input($_SERVER["REMOTE_ADDR"]) . "' ORDER BY time"); $cnt = count($last_login_time); $rowx["time"] = 0; if ($cnt) { $rowx = $last_login_time[0]; } $user = Employee::findOneBy(array('email' => strtolower($Frm->GetValue(0)), 'hpwd' => md5($Frm->GetValue(1) . $Frm->GetValue(0)))); if (!$user || $cnt > 2) { if ($cnt > 1) { $t = 900 - time() + $rowx["time"]; if ($t > 60) { $w = floor($t / 60) . " мин."; } else { $w = " минуту"; } $Frm->_gui->Vars["login_message"] = "Попытки исчерпаны. Подождите " . $w; } else { $Frm->_gui->Vars["login_message"] = "Ошибка. Осталось попыток: " . (2 - $cnt); db::insert(TABLE_LOGIN_HOST, array('ip' => $_SERVER['REMOTE_ADDR'], 'time' => time())); } return; } else { // ok if ($user["blocked"] || $user["black_list"]) { $Frm->_gui->Vars["login_message"] = "Доступ запрещен"; return; } $ll = array(); if ($user["last_login"]) { $ll = unserialize($user["last_login"]); while (count($ll) > 99) { array_shift($ll); } } $ll[] = array("ip" => $_SERVER['REMOTE_ADDR'], "time" => time()); Employee::update($user['id'], array('last_act' => time(), 'last_login' => serialize($ll))); unset($user["last_act"]); unset($user["last_login"]); $_SESSION["user"]["auth"] = true; $_SESSION["user"]["data"] = $user; page_reload(); } }