mirror of
https://github.com/fwbuilder/fwbuilder
synced 2026-03-23 19:57:21 +01:00
* UserWorkflow.cpp (UserWorkflow::flagsToQueryString): added user
workflow progress flags for an attempted install and first successful install. Both flags are boolean true/false indicating that the even occurred. We do not track and do not report any information about the firewall, platform, rules etc. These flags will be used to determine how many users abandon the program before even trying to run install for real because it is too complicated or the UI is not good enough. Fixes #1495 * UserWorkflow.cpp (UserWorkflow::flagsToQueryString): added user workflow flag indicating that ssh/scp have been configured in the Prefereces dialog. The flag is boolean and registers only the fact that something was entered in ssh and scp fields. Actual path and programs used are not registered and reported. Fixes #1496
This commit is contained in:
parent
2cac0a92e9
commit
a9aa4dd623
@ -1,3 +1,24 @@
|
||||
2010-06-06 vadim <vadim@vk.crocodile.org>
|
||||
|
||||
* UserWorkflow.cpp (UserWorkflow::flagsToQueryString): added user
|
||||
workflow progress flags for an attempted install and first
|
||||
successful install. Both flags are boolean true/false indicating
|
||||
that the even occurred. We do not track and do not report any
|
||||
information about the firewall, platform, rules etc. These flags
|
||||
will be used to determine how many users abandon the program
|
||||
before even trying to run install for real because it is too
|
||||
complicated or the UI is not good enough. Fixes #1495
|
||||
|
||||
* UserWorkflow.cpp (UserWorkflow::flagsToQueryString): added user
|
||||
workflow flag indicating that ssh/scp have been configured in the
|
||||
Prefereces dialog. The flag is boolean and registers only the fact
|
||||
that something was entered in ssh and scp fields. Actual path and
|
||||
programs used are not registered and reported. Fixes #1496
|
||||
|
||||
2010-06-03 vadim <vadim@vk.crocodile.org>
|
||||
|
||||
* v4.0.1 released
|
||||
|
||||
2010-06-02 vadim <vadim@vk.crocodile.org>
|
||||
|
||||
* Preprocessor.cpp (Preprocessor::findMultiAddressObjectsUsedInRules):
|
||||
|
||||
@ -35,6 +35,7 @@
|
||||
#include "SSHSession.h"
|
||||
#include "SSHUnx.h"
|
||||
#include "Configlet.h"
|
||||
#include "UserWorkflow.h"
|
||||
|
||||
#include "fwbuilder/Resources.h"
|
||||
#include "fwbuilder/FWObjectDatabase.h"
|
||||
@ -421,6 +422,8 @@ void FirewallInstaller::runJobs()
|
||||
instJob current_job = job_list.front();
|
||||
job_list.pop_front();
|
||||
|
||||
wfl->registerFlag(UserWorkflow::INSTALL_RAN, true);
|
||||
|
||||
switch (current_job.job)
|
||||
{
|
||||
case COPY_FILE:
|
||||
|
||||
@ -468,6 +468,26 @@ void PrefsDialog::accept()
|
||||
|
||||
st->setClipComment(m_dialog->chClipComment->isChecked());
|
||||
|
||||
st->setCheckUpdatesProxy(m_dialog->checkUpdatesProxy->text());
|
||||
|
||||
wfl->registerFlag(UserWorkflow::USING_HTTP_PROXY,
|
||||
!st->getCheckUpdatesProxy().isEmpty());
|
||||
|
||||
// annoyingly, widget shotTip has the name opposite to its meaning.
|
||||
// When it is checked, we do not show tip of the day.
|
||||
|
||||
wfl->registerFlag(UserWorkflow::TIP_OF_THE_DAY_DISABLED,
|
||||
m_dialog->showTips->isChecked());
|
||||
st->setBool("UI/NoStartTip", m_dialog->showTips->isChecked());
|
||||
|
||||
st->setSSHPath( m_dialog->sshPath->text() );
|
||||
st->setSCPPath( m_dialog->scpPath->text() );
|
||||
st->setBool("Environment/RememberSshPassEnabled", m_dialog->rememberSshPass->isChecked());
|
||||
|
||||
wfl->registerFlag(UserWorkflow::SSH_CONFIGURED,
|
||||
!m_dialog->sshPath->text().isEmpty() &&
|
||||
!m_dialog->scpPath->text().isEmpty());
|
||||
|
||||
|
||||
if (m_dialog->checkUpdates->isChecked())
|
||||
{
|
||||
@ -487,15 +507,7 @@ void PrefsDialog::accept()
|
||||
}
|
||||
|
||||
st->setCheckUpdates(m_dialog->checkUpdates->isChecked());
|
||||
st->setCheckUpdatesProxy(m_dialog->checkUpdatesProxy->text());
|
||||
|
||||
wfl->registerFlag(UserWorkflow::USING_HTTP_PROXY,
|
||||
!st->getCheckUpdatesProxy().isEmpty());
|
||||
|
||||
st->setSSHPath( m_dialog->sshPath->text() );
|
||||
st->setSCPPath( m_dialog->scpPath->text() );
|
||||
st->setBool("Environment/RememberSshPassEnabled", m_dialog->rememberSshPass->isChecked());
|
||||
|
||||
for (int row=0; row < m_dialog->enabled_platforms->rowCount(); ++row)
|
||||
{
|
||||
QTableWidgetItem *itm = m_dialog->enabled_platforms->item(row, 0);
|
||||
@ -531,12 +543,6 @@ void PrefsDialog::accept()
|
||||
mw->updateTreeFont();
|
||||
// app->setFont(st->getTreeFont());
|
||||
|
||||
// annoyingly, widget shotTip has the name opposite to its meaning.
|
||||
// When it is checked, we do not show tip of the day.
|
||||
|
||||
wfl->registerFlag(UserWorkflow::TIP_OF_THE_DAY_DISABLED,
|
||||
m_dialog->showTips->isChecked());
|
||||
st->setBool("UI/NoStartTip", m_dialog->showTips->isChecked());
|
||||
|
||||
QDialog::accept();
|
||||
}
|
||||
|
||||
@ -57,6 +57,9 @@ UserWorkflow::UserWorkflow()
|
||||
|
||||
registerFlag(TIP_OF_THE_DAY_DISABLED, st->getBool("UI/NoStartTip"));
|
||||
registerFlag(UPDATE_CHECKS_DISABLED, !st->getCheckUpdates());
|
||||
|
||||
registerFlag(UserWorkflow::SSH_CONFIGURED,
|
||||
!st->getSCPPath().isEmpty() && !st->getSCPPath().isEmpty());
|
||||
}
|
||||
|
||||
UserWorkflow::~UserWorkflow()
|
||||
@ -89,17 +92,20 @@ QString UserWorkflow::flagsToQueryString(int session_duration)
|
||||
// query string of flags has the format uc=0&gs=1&ft=0 ...
|
||||
// each flag is a two-characters variable with a value of 0 or 1
|
||||
QStringList fl;
|
||||
fl << QString("sd=%1").arg(session_duration);
|
||||
fl << QString("uc=%1").arg(flags.value(UPDATE_CHECKS_DISABLED));
|
||||
fl << QString("gs=%1").arg(flags.value(GETTING_STARTED_TUTOTIAL));
|
||||
fl << QString("ft=%1").arg(flags.value(NEW_FW_WITH_TEMPLATE));
|
||||
fl << QString("fn=%1").arg(flags.value(NEW_FW_NO_TEMPLATE));
|
||||
fl << QString("rm=%1").arg(flags.value(RULE_MOD));
|
||||
fl << QString("co=%1").arg(flags.value(COMPILE));
|
||||
fl << QString("in=%1").arg(flags.value(INSTALL));
|
||||
fl << QString("fn=%1").arg(flags.value(NEW_FW_NO_TEMPLATE));
|
||||
fl << QString("ft=%1").arg(flags.value(NEW_FW_WITH_TEMPLATE));
|
||||
fl << QString("gs=%1").arg(flags.value(GETTING_STARTED_TUTOTIAL));
|
||||
fl << QString("im=%1").arg(flags.value(IMPORT));
|
||||
fl << QString("ti=%1").arg(flags.value(TIP_OF_THE_DAY_DISABLED));
|
||||
fl << QString("in=%1").arg(flags.value(INSTALL));
|
||||
fl << QString("ir=%1").arg(flags.value(INSTALL_RAN));
|
||||
fl << QString("is=%1").arg(flags.value(INSTALL_SUCCESS));
|
||||
fl << QString("pr=%1").arg(flags.value(USING_HTTP_PROXY));
|
||||
fl << QString("rm=%1").arg(flags.value(RULE_MOD));
|
||||
fl << QString("sc=%1").arg(flags.value(SSH_CONFIGURED));
|
||||
fl << QString("sd=%1").arg(session_duration);
|
||||
fl << QString("ti=%1").arg(flags.value(TIP_OF_THE_DAY_DISABLED));
|
||||
fl << QString("uc=%1").arg(flags.value(UPDATE_CHECKS_DISABLED));
|
||||
return fl.join("&");
|
||||
}
|
||||
|
||||
|
||||
@ -81,9 +81,12 @@ public:
|
||||
RULE_MOD,
|
||||
COMPILE,
|
||||
INSTALL,
|
||||
INSTALL_RAN,
|
||||
INSTALL_SUCCESS,
|
||||
IMPORT,
|
||||
TIP_OF_THE_DAY_DISABLED,
|
||||
USING_HTTP_PROXY,
|
||||
SSH_CONFIGURED,
|
||||
};
|
||||
|
||||
private:
|
||||
|
||||
@ -35,6 +35,7 @@
|
||||
#include "InstallFirewallViewItem.h"
|
||||
#include "instOptionsDialog.h"
|
||||
#include "instBatchOptionsDialog.h"
|
||||
#include "UserWorkflow.h"
|
||||
|
||||
#include <qcheckbox.h>
|
||||
#include <qlineedit.h>
|
||||
@ -364,6 +365,9 @@ void instDialog::opSuccess(Firewall *fw)
|
||||
setSuccessState(itm);
|
||||
}
|
||||
currentLabel->setText("");
|
||||
|
||||
if (installer)
|
||||
wfl->registerFlag(UserWorkflow::INSTALL_SUCCESS, true);
|
||||
}
|
||||
|
||||
void instDialog::opError(Firewall *fw)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user