]> git.nothing2do.fr Git - diary-mobile.git/commitdiff
I've added restoreDB() but It won't work ...
authorNorbert Moutarde <norbert.moutarde@nothing2do.eu>
Sun, 16 Mar 2014 17:08:19 +0000 (18:08 +0100)
committerNorbert Moutarde <norbert.moutarde@nothing2do.eu>
Sun, 16 Mar 2014 17:08:19 +0000 (18:08 +0100)
README.md
mainwindow.cpp
mainwindow.h

index 269befd63324e1b1bd6ac6cde5fc431fab145b49..866f389a9eefd59f738723b533f90aec68604bac 100644 (file)
--- a/README.md
+++ b/README.md
@@ -14,4 +14,4 @@ ftp://[user]:[pass]@[hostname]/[filename]
 
 todo :
 
-connect to postgresql server, edit button on the fly, and ...
+connect to postgresql server, edit button on the fly, restore DB from url, and ...
index 18ad436a2c52c97a41843d8a149975a0a65d9423..a86abc19b1363ccaa6e4867a384e1246c658d956 100644 (file)
@@ -145,7 +145,8 @@ void MainWindow::createMenuBar(){
     FileMenu->addAction(trUtf8("&Start..."), this, SLOT(start()),QKeySequence(trUtf8("Ctrl+S", "File|Start")));
     FileMenu->addAction(trUtf8("&Back"), this, SLOT(back()),QKeySequence(trUtf8("Ctrl+B", "File|Back")));
     FileMenu->addAction(trUtf8("&Download"), this, SLOT(updateUi()),QKeySequence(trUtf8("Ctrl+W", "File|Downlad")));
-    FileMenu->addAction(trUtf8("Up&load"), this, SLOT(sendDB()),QKeySequence(trUtf8("Ctrl+L", "File|Upload")));
+    FileMenu->addAction(trUtf8("BackUp"), this, SLOT(sendDB()),QKeySequence(trUtf8("Ctrl+L", "File|Upload")));
+    FileMenu->addAction(trUtf8("Rest&ore"), this, SLOT(restoreDB()),QKeySequence(trUtf8("Ctrl+O", "File|Restore")));
     FileMenu->addAction(trUtf8("Reset Ui"), this, SLOT(resetUi()), QKeySequence(trUtf8("Ctrl+Z", "File|ResetUi")));
     FileMenu->addAction(trUtf8("&Quit..."), this, SLOT(quit()),QKeySequence(trUtf8("Ctrl+Q", "File|Quit")));
     menuBar()->addMenu(FileMenu);
@@ -240,8 +241,9 @@ void MainWindow::firstrun(){
     conf->setValue(QString("menu"), QVariant(1));
     conf->setValue(QString("download"), QVariant("https://raw.github.com/Nothing2Do/diary-mobile-android/master/ui.sql"));
     conf->setValue(QString("upload"), QVariant("ftp://<user>:<pass>@<hostname>/<file>"));
+    conf->setValue(QString("restore"), QVariant("http://www.xxx.com/db"));
     conf->setValue(QString("start"), QVariant("begin"));
-    conf->setValue(QString("db"), QVariant("/data/data/eu.nothing2do.diarymobile/db"));
+    conf->setValue(QString("db"), QVariant("/data/data/eu.nothing2do.diarymobile/files/db"));
 }
 QString &MainWindow::get(int row, int column){
     q->seek(row);
@@ -359,16 +361,18 @@ void MainWindow::updateUi(){
     connect(m, SIGNAL(downloaded()), SLOT(writeUpdate()));
 }
 void MainWindow::sendDB(){
+    system("su");
     qDebug()<<"sendDB() : "<<conf->value(QString("upload")).toString();
     QUrl upload(conf->value(QString("upload")).toString());
     net=new QNetworkAccessManager(this);
     QFile b(conf->value(QString("db")).toString());
     b.open(QIODevice::ReadOnly);
-    //QDataStream c(b.readAll());
-    rep=net->put(QNetworkRequest(upload), b.readAll());
+    QByteArray c(b.readAll());
+    rep=net->put(QNetworkRequest(upload), c);
     qDebug()<<"net->put : "<<rep<< " upload : "<<upload.url();
     //rep=net->put(QNetworkRequest(upload),data);
     connect(rep, SIGNAL(finished()), this, SLOT(datasend()));
+    system("exit");
 }
 void MainWindow::back(){
     if(way.size()-1>0){
@@ -465,3 +469,15 @@ void MainWindow::resetUi(){
     exec(QList<QString>({"delete from ui;"}));
 
 }
+void MainWindow::restoreDB(){
+    system("su");
+    qDebug()<<"restoreDB() : "<<conf->value(QString("restore")).toString();
+    QUrl download(conf->value(QString("restore")).toString());
+    net=new QNetworkAccessManager(this);
+    QFile b(conf->value(QString("db")).toString());
+    b.open(QIODevice::WriteOnly);
+    rep=net->get(QNetworkRequest(download));
+    // to be finished ...
+    b.write(rep->readAll());
+    system("exit");
+}
index 84c61fb9825706f6b330be4ca62faa409f5991ed..132c05810bd3343fe6b9cc5b2cd6218159a93d8b 100644 (file)
@@ -121,6 +121,7 @@ private slots:
     //void savButtons();
     void readButtons(const QByteArray &);
     void resetUi();
+    void restoreDB();
 public slots:
 
 signals: