private void ShowButtonDescription(String buttonText) { String showtext = ""; String table_to_access = "none"; if (buttonText == "Отделения") { showtext = "Просмотр всех отделений клуба знакомств. Их название, адрес и арендная плата."; table_to_access = "dating_club_department"; } else if (buttonText == "Клиенты") { showtext = "Просмотр данных всех клиентов."; table_to_access = "client"; } else if (buttonText == "Контракты") { showtext = "Просмотр контрактов клиентов."; table_to_access = "contract"; } else if (buttonText == "Работники") { showtext = "Просмотр данных всех работников отделений клуба знакомств."; table_to_access = "employee"; } else if (buttonText == "Администрирование") { showtext = "Просмотр учетных записей всех пользователей Базы Данных, изменение их ролей."; } else if (buttonText == "Свидания") { showtext = "Просмотр всех запланированных и прошедших свиданий."; table_to_access = "meeting"; } else if (buttonText == "Места встреч") { showtext = "Просмотр всех зарезервированных клубом мест для свиданий клиентов."; table_to_access = "meeting_place"; } else if (buttonText == "Пары") { showtext = "Просмотр всех пар клиентов."; table_to_access = "pare"; } else if (buttonText == "О программе") { showtext = "Раздел, содержащию информацию о программе."; } else if (buttonText == "Подобрать пару клиенту") { showtext = "Подобрать подходящие кандидатуры в пару клиенту по его ID."; } else if (buttonText == "Показать клиенту список") { showtext = "Показать клиенту список всех клиентов клуба, имеющих действительный контракт. В списке отсутствует личная информация."; } else if (buttonText == "Отчет по договорам") { showtext = "Вывести краткий отчет по оформленным договорам: всего, за последний месяц, завершенные, отмененные, активные."; } else if (buttonText == "Сменить пользователя") { showtext = "Выход к окну авторизации."; } else if (buttonText == "Закрыть программу") { showtext = "Завершение работы программы."; } if (table_to_access != "none") { try { String[] access_check = { "SELECT", "INSERT", "UPDATE", "DELETE" }; String[] access_check_rus = { "чтение", "запись", "изменение", "удаление" }; List <String> access_mods = new List <string>(); for (int i = 0; i < access_check.Length; i++) { NpgsqlDataReader dataReader = PgSql.HasTablePrivileges(table_to_access, access_check[i]); if (dataReader.Read()) { if (dataReader[0].ToString() == "t") { access_mods.Add(access_check_rus[i]); } } //dataReader.Close(); } showtext += "\n\nДоступ: "; if (access_mods.Count == 0) { showtext += "отсутствует."; } else { for (int i = 0; i < access_mods.Count; i++) { showtext += access_mods[i]; if (i != access_mods.Count - 1) { showtext += ", "; } else { showtext += "."; } } } } catch (Exception ex) { MessageBox.Show(ex.Message); } } lbButtonDescription.Text = showtext; }