File indexing completed on 2024-05-12 05:48:40
0001 /* 0002 KApacheLog, a apache log viewer tool 0003 SPDX-FileCopyrightText: 2007 Nicolas Ternisien <nicolas.ternisien@gmail.com> 0004 0005 SPDX-License-Identifier: GPL-2.0-or-later 0006 */ 0007 0008 #include "sambaConfigurationWidget.h" 0009 0010 SambaConfigurationWidget::SambaConfigurationWidget() 0011 : LogModeConfigurationWidget(i18n("Samba Log"), QStringLiteral(SAMBA_MODE_ICON), i18n("Samba Log")) 0012 { 0013 auto layout = new QHBoxLayout(this); 0014 0015 mSambaFileList = new MultipleFileList(this, 0016 i18n("<p>These files will be analyzed to show <b>Samba log</b>, " 0017 "<b>Samba Access log</b> and <b>Netbios log</b>.</p>")); 0018 0019 mSambaPathsId = mSambaFileList->addCategory(i18n("Samba Log Files"), i18n("Add Samba File...")); 0020 mSambaAccessPathsId = mSambaFileList->addCategory(i18n("Samba Access Log Files"), i18n("Add Samba Access File...")); 0021 mNetbiosPathsId = mSambaFileList->addCategory(i18n("Netbios Log Files"), i18n("Add Netbios File...")); 0022 0023 connect(mSambaFileList, &MultipleFileList::fileListChanged, this, &LogModeConfigurationWidget::configurationChanged); 0024 0025 layout->addWidget(mSambaFileList); 0026 } 0027 0028 void SambaConfigurationWidget::saveConfig() 0029 { 0030 qCDebug(KSYSTEMLOG) << "Saving config from Samba Options..."; 0031 0032 auto *sambaConfiguration = Globals::instance().findLogMode(QStringLiteral(SAMBA_LOG_MODE_ID))->logModeConfiguration<SambaConfiguration *>(); 0033 sambaConfiguration->setSambaPaths(mSambaFileList->paths(mSambaPathsId)); 0034 sambaConfiguration->setSambaAccessPaths(mSambaFileList->paths(mSambaAccessPathsId)); 0035 sambaConfiguration->setNetbiosPaths(mSambaFileList->paths(mNetbiosPathsId)); 0036 } 0037 0038 void SambaConfigurationWidget::defaultConfig() 0039 { 0040 // TODO Find a way to read the configuration per default 0041 readConfig(); 0042 } 0043 0044 void SambaConfigurationWidget::readConfig() 0045 { 0046 auto *sambaConfiguration = Globals::instance().findLogMode(QStringLiteral(SAMBA_LOG_MODE_ID))->logModeConfiguration<SambaConfiguration *>(); 0047 0048 mSambaFileList->removeAllItems(); 0049 0050 mSambaFileList->addPaths(mSambaPathsId, sambaConfiguration->sambaPaths()); 0051 mSambaFileList->addPaths(mSambaAccessPathsId, sambaConfiguration->sambaAccessPaths()); 0052 mSambaFileList->addPaths(mNetbiosPathsId, sambaConfiguration->netbiosPaths()); 0053 } 0054 0055 bool SambaConfigurationWidget::isValid() const 0056 { 0057 if (mSambaFileList->isOneOfCategoryEmpty()) { 0058 qCDebug(KSYSTEMLOG) << "Samba configuration not valid"; 0059 return false; 0060 } 0061 0062 qCDebug(KSYSTEMLOG) << "Samba configuration valid"; 0063 return true; 0064 } 0065 0066 #include "moc_sambaConfigurationWidget.cpp"