| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- #include "updatesysdb.h"
- #include "SNCDataBase.h"
- #include "loghelper.h"
- UpdateSysDb::UpdateSysDb()
- {
- this->data_config_url = SNCDataBase::getDataConfigUrl();
- manager = 0;
- }
- UpdateSysDb::~UpdateSysDb()
- {
- qDebug()<<QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")\
- <<"UpdateSysDb Destroyed.";
- if(manager)
- delete manager;
- }
- bool UpdateSysDb::updateDataBase()
- {
- if(!getServerConfig())
- return false;
- qDebug()<<QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")\
- <<"data xml fetched";
- if(!parser.banner_ad.isEmpty())
- SNCDataBase::updateBannerAd(parser.banner_ad);
- if(parser.page_ads.count()!=0)
- SNCDataBase::updatePageAd(parser.page_ads);
- if(parser.text_ads.count()!=0)
- SNCDataBase::updateTextAd(parser.text_ads);
- if(parser.corp_prefix.count()!=0)
- SNCDataBase::updateCorpPrefix(parser.corp_prefix);
- if(parser.client_config.count()!=0 && !parser.client_default_host.isEmpty() && !parser.client_default_port.isEmpty())
- SNCDataBase::updateClientConfig(parser.client_config,parser.client_default_host,parser.client_default_port);
- if(!parser.website_title.isEmpty() && !parser.website_url.isEmpty())
- {
- SNCDataBase::updateWebsiteUrl(parser.website_url);
- SNCDataBase::updateWebsiteTitle(parser.website_title);
- }
- if(!parser.helpme_url.isEmpty())
- SNCDataBase::updateHelpmeUrl(parser.helpme_url);
- if(!parser.banner_topad.isEmpty())
- SNCDataBase::updateBannerTopAd(parser.banner_topad);
- if(!parser.banner_bottomad.isEmpty())
- SNCDataBase::updateBannerBottomAd(parser.banner_bottomad);
- if(!parser.riddle_url.isEmpty())
- SNCDataBase::updateRiddleUrl(parser.riddle_url);
- if(!parser.sso_account_url.isEmpty())
- SNCDataBase::updateSSOAccountUrl(parser.sso_account_url);
- if(!parser.sso_reg_url.isEmpty())
- SNCDataBase::updateSSORegUrl(parser.sso_reg_url);
- if(!parser.sso_pay_url.isEmpty())
- SNCDataBase::updateSSOPayUrl(parser.sso_pay_url);
- return true;
- }
- bool UpdateSysDb::getServerConfig()
- {
- QString config_url = data_config_url;
- QString content = downloadFile(config_url);
- return parser.readConfig(content);
- }
- QString UpdateSysDb::downloadFile(QString http_url)
- {
- QUrl url(http_url);
- QNetworkAccessManager manager;
- QNetworkReply *reply = manager.get(QNetworkRequest(url));
- QTextCodec::setCodecForCStrings(QTextCodec::codecForName("utf8"));
- QObject::connect(reply, SIGNAL(finished()), &loop, SLOT(quit()));
- QTimer::singleShot(10000, &loop, SLOT(quit()));
- loop.exec();
- QString content = reply->readAll();
- QTextCodec::setCodecForCStrings(QTextCodec::codecForName("system"));
- QTextCodec::setCodecForTr(QTextCodec::codecForName("system"));
- if(reply)
- delete reply;
- return content;
- }
|