void confirmDeleteDialog::on_pushButton_clicked()       ///confirm button
{


    QString deleteQryText;
    QSqlQuery deleteQry;

    if (elementType=="Vpn")        ///for every VPN it deletes all associated sites
    {                              ///the deleteSite function deletes all interfaces for a given site
                                   ///this won't be necessary when I implement the isDeletedFlag for history viewing

        deleteQryText=QString("select siteId from sites where vpnId=%1").arg(id);
        deleteQry.exec(deleteQryText);

            while(deleteQry.next()){
                deleteSite(deleteQry.value(0).toUInt());
            }

            deleteQryText=QString("delete from VPNs where vpnId=%1").arg(id);
            deleteQry.exec(deleteQryText);

            deleteQryText=QString("delete from vpnVlanRanges where vpnId=%1").arg(id);
            deleteQry.exec(deleteQryText);

            deleteQryText=QString("delete from vpnIpIntervals where vpnId=%1").arg(id);
            deleteQry.exec(deleteQryText);
            emit deleted();

    }

    else if (elementType=="Site"){
        deleteSite(id);
        emit deleted();
    }

    else if (elementType=="VpnGroup")
    {
        deleteQryText=QString("delete from vpnGroups where groupId=%1").arg(id);
        deleteQry.exec(deleteQryText);
        emit deletedGroup();
    }

    qDebug()<<Q("Successfully deleted "+elementType+" "+elementName+".");
    this->close();
}
Example #2
0
void sourcesWindow::settingsSite(QString site)
{
	SourcesSettingsWindow *ssw = new SourcesSettingsWindow(m_sites->value(site), this);
	connect(ssw, SIGNAL(siteDeleted(QString)), this, SLOT(deleteSite(QString)));
	ssw->show();
}