-rw-r--r-- | korganizer/mainwindow.cpp | 113 | ||||
-rw-r--r-- | korganizer/mainwindow.h | 1 |
2 files changed, 57 insertions, 57 deletions
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index 48320a5..b9d8742 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp | |||
@@ -1033,11 +1033,12 @@ void MainWindow::initActions() | |||
1033 | //#endif | 1033 | //#endif |
1034 | 1034 | ||
1035 | //importMenu->insertSeparator(); | 1035 | //importMenu->insertSeparator(); |
1036 | #if 0 | ||
1036 | action = new QAction( "load_cal", i18n("Load Calendar Backup"), 0, | 1037 | action = new QAction( "load_cal", i18n("Load Calendar Backup"), 0, |
1037 | this ); | 1038 | this ); |
1038 | action->addTo( importMenu ); | 1039 | action->addTo( importMenu ); |
1039 | connect( action, SIGNAL( activated() ), SLOT( loadCalendar() ) ); | 1040 | connect( action, SIGNAL( activated() ), SLOT( loadCalendar() ) ); |
1040 | 1041 | #endif | |
1041 | action = new QAction( "save_cal", i18n("Save Calendar Backup"), 0, | 1042 | action = new QAction( "save_cal", i18n("Save Calendar Backup"), 0, |
1042 | this ); | 1043 | this ); |
1043 | action->addTo( importMenu ); | 1044 | action->addTo( importMenu ); |
@@ -1845,6 +1846,44 @@ void MainWindow::saveStopTimer() | |||
1845 | { | 1846 | { |
1846 | mSaveTimer.stop(); | 1847 | mSaveTimer.stop(); |
1847 | } | 1848 | } |
1849 | void MainWindow::backupAllFiles() | ||
1850 | { | ||
1851 | QDate reference ( 2000,1,1); | ||
1852 | int daysTo = reference.daysTo ( QDate::currentDate() ); | ||
1853 | setCaption(i18n("Creating backup ... please wait ..." )); | ||
1854 | qDebug("KO: Last backup was %d days ago ", daysTo - KOPrefs::instance()->mLastBackupDate); | ||
1855 | // we need the file path, the backup dir and the number of bups as param | ||
1856 | QString bupDir = KPimGlobalPrefs::instance()->mBackupDatadir; | ||
1857 | if ( KPimGlobalPrefs::instance()->mBackupUseDefaultDir) | ||
1858 | bupDir = KGlobalSettings::backupDataDir(); | ||
1859 | int retval = KApplication::createBackup( defaultFileName(), bupDir, KPimGlobalPrefs::instance()->mBackupNumbers ); | ||
1860 | if ( retval == 0 ) { | ||
1861 | setCaption(i18n("Backup cancelled" )); | ||
1862 | qDebug("KO: Backup cancelled. Will try again tomorrow "); | ||
1863 | // retval == 0 : backup skipped for today, try again tomorrow | ||
1864 | KOPrefs::instance()->mLastBackupDate = daysTo- KPimGlobalPrefs::instance()->mBackupDayCount+1; | ||
1865 | } else if ( retval == 1 ){ | ||
1866 | qDebug("KO: Backup created."); | ||
1867 | // backup ok | ||
1868 | QPtrList<KopiCalendarFile> calendars = KOPrefs::instance()->mCalendars; | ||
1869 | KopiCalendarFile * cal = calendars.first(); | ||
1870 | cal = calendars.next(); | ||
1871 | while ( cal ) { | ||
1872 | if ( !cal->mErrorOnLoad ) { | ||
1873 | int retval = KApplication::createBackup( cal->mFileName, bupDir, KPimGlobalPrefs::instance()->mBackupNumbers ); | ||
1874 | } | ||
1875 | cal = calendars.next(); | ||
1876 | } | ||
1877 | KOPrefs::instance()->mLastBackupDate = daysTo; | ||
1878 | setCaption(i18n("Backup succesfully finished" )); | ||
1879 | } else if ( retval == 2 ){ | ||
1880 | setCaption(i18n("Backup globally disabled" )); | ||
1881 | qDebug("KO: Backup globally cancelled."); | ||
1882 | // backup globally cancelled | ||
1883 | KPimGlobalPrefs::instance()->mBackupEnabled = false; | ||
1884 | } | ||
1885 | // retval == 3: do nothing, try again later | ||
1886 | } | ||
1848 | void MainWindow::save() | 1887 | void MainWindow::save() |
1849 | { | 1888 | { |
1850 | if ( !mCalendarModifiedFlag ) { | 1889 | if ( !mCalendarModifiedFlag ) { |
@@ -1859,38 +1898,9 @@ void MainWindow::save() | |||
1859 | QDate reference ( 2000,1,1); | 1898 | QDate reference ( 2000,1,1); |
1860 | int daysTo = reference.daysTo ( QDate::currentDate() ); | 1899 | int daysTo = reference.daysTo ( QDate::currentDate() ); |
1861 | if ( daysTo - KPimGlobalPrefs::instance()->mBackupDayCount >= KOPrefs::instance()->mLastBackupDate ) { | 1900 | if ( daysTo - KPimGlobalPrefs::instance()->mBackupDayCount >= KOPrefs::instance()->mLastBackupDate ) { |
1862 | setCaption(i18n("Creating backup ... please wait ..." )); | 1901 | backupAllFiles(); |
1863 | qDebug("KO: Last backup was %d days ago ", daysTo - KOPrefs::instance()->mLastBackupDate); | ||
1864 | // we need the file path, the backup dir and the number of bups as param | ||
1865 | QString bupDir = KPimGlobalPrefs::instance()->mBackupDatadir; | ||
1866 | if ( KPimGlobalPrefs::instance()->mBackupUseDefaultDir) | ||
1867 | bupDir = KGlobalSettings::backupDataDir(); | ||
1868 | int retval = KApplication::createBackup( defaultFileName(), bupDir, KPimGlobalPrefs::instance()->mBackupNumbers ); | ||
1869 | if ( retval == 0 ) { | ||
1870 | qDebug("KO: Backup cancelled. Will try again tomorrow "); | ||
1871 | // retval == 0 : backup skipped for today, try again tomorrow | ||
1872 | KOPrefs::instance()->mLastBackupDate = daysTo- KPimGlobalPrefs::instance()->mBackupDayCount+1; | ||
1873 | } else if ( retval == 1 ){ | ||
1874 | qDebug("KO: Backup created."); | ||
1875 | // backup ok | ||
1876 | QPtrList<KopiCalendarFile> calendars = KOPrefs::instance()->mCalendars; | ||
1877 | KopiCalendarFile * cal = calendars.first(); | ||
1878 | cal = calendars.next(); | ||
1879 | while ( cal ) { | ||
1880 | if ( !cal->mErrorOnLoad ) { | ||
1881 | int retval = KApplication::createBackup( cal->mFileName, bupDir, KPimGlobalPrefs::instance()->mBackupNumbers ); | ||
1882 | } | ||
1883 | cal = calendars.next(); | ||
1884 | } | ||
1885 | KOPrefs::instance()->mLastBackupDate = daysTo; | ||
1886 | } else if ( retval == 2 ){ | ||
1887 | qDebug("KO: Backup globally cancelled."); | ||
1888 | // backup globally cancelled | ||
1889 | KPimGlobalPrefs::instance()->mBackupEnabled = false; | ||
1890 | } | ||
1891 | // retval == 3: do nothing, try again later | ||
1892 | } | 1902 | } |
1893 | ; // KPimGlobalPrefs::instance()->mLastBackupDate | 1903 | ; // KPimGlobalPrefs::instance()->mLastBackupDate |
1894 | } | 1904 | } |
1895 | QTime neededSaveTime = QDateTime::currentDateTime().time(); | 1905 | QTime neededSaveTime = QDateTime::currentDateTime().time(); |
1896 | setCaption(i18n("KO/Pi:Saving Data to File ..." )); | 1906 | setCaption(i18n("KO/Pi:Saving Data to File ..." )); |
@@ -2300,35 +2310,23 @@ void MainWindow::configureAgenda( int item ) | |||
2300 | 2310 | ||
2301 | void MainWindow::saveCalendar() | 2311 | void MainWindow::saveCalendar() |
2302 | { | 2312 | { |
2303 | QString fn = KOPrefs::instance()->mLastSaveFile; | 2313 | |
2304 | fn = KFileDialog::getSaveFileName( fn, i18n("Save backup filename"), this ); | 2314 | QString bupDir = KPimGlobalPrefs::instance()->mBackupDatadir; |
2305 | 2315 | if ( KPimGlobalPrefs::instance()->mBackupUseDefaultDir) | |
2306 | if ( fn == "" ) | 2316 | bupDir = KGlobalSettings::backupDataDir(); |
2307 | return; | 2317 | bupDir = KGlobal::formatMessage ( bupDir, 0 ); |
2308 | QFileInfo info; | 2318 | QString bupHint; |
2309 | info.setFile( fn ); | 2319 | if ( !KPimGlobalPrefs::instance()->mBackupEnabled ) |
2310 | QString mes; | 2320 | bupHint = i18n("(Hint: You can enable automatic backup in the global settings!)"); |
2311 | bool createbup = true; | 2321 | if ( KMessageBox::warningContinueCancel( this, i18n("This will <b>backup all calendar files</b> to the directory %1 %2").arg(bupDir).arg(bupHint),i18n("Information") ) != KMessageBox::Continue ) return; |
2312 | if ( info. exists() ) { | 2322 | backupAllFiles(); |
2313 | mes = i18n("Backup file\nalready exists!\nOld backup file from:\n%1\nOverwrite?\n").arg(KGlobal::locale()->formatDateTime(info.lastModified (), true, false )) ; | ||
2314 | int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"),mes, | ||
2315 | i18n("Overwrite!"), i18n("Cancel"), 0, | ||
2316 | 0, 1 ); | ||
2317 | if ( result != 0 ) { | ||
2318 | createbup = false; | ||
2319 | } | ||
2320 | } | ||
2321 | if ( createbup ) { | ||
2322 | mView->saveCalendar( fn ); | ||
2323 | mes = i18n("KO/Pi:Saved %1").arg(fn); | ||
2324 | KOPrefs::instance()->mLastSaveFile = fn; | ||
2325 | setCaption(mes); | ||
2326 | } | ||
2327 | } | 2323 | } |
2328 | void MainWindow::loadCalendar() | 2324 | void MainWindow::loadCalendar() |
2329 | { | 2325 | { |
2330 | 2326 | ||
2331 | QString fn = KOPrefs::instance()->mLastLoadFile; | 2327 | |
2328 | #if 0 | ||
2329 | QString fn = KOPrefs::instance()->mLastLoadFile; | ||
2332 | fn = KFileDialog::getOpenFileName( fn, i18n("Load backup filename"), this ); | 2330 | fn = KFileDialog::getOpenFileName( fn, i18n("Load backup filename"), this ); |
2333 | 2331 | ||
2334 | if ( fn == "" ) | 2332 | if ( fn == "" ) |
@@ -2359,6 +2357,7 @@ void MainWindow::loadCalendar() | |||
2359 | mess = i18n("KO/Pi:Loaded %1").arg(fn) ; | 2357 | mess = i18n("KO/Pi:Loaded %1").arg(fn) ; |
2360 | setCaption(mess); | 2358 | setCaption(mess); |
2361 | } | 2359 | } |
2360 | #endif | ||
2362 | 2361 | ||
2363 | } | 2362 | } |
2364 | void MainWindow::quickImportIcal() | 2363 | void MainWindow::quickImportIcal() |
diff --git a/korganizer/mainwindow.h b/korganizer/mainwindow.h index 9a8bc7f..c9817c3 100644 --- a/korganizer/mainwindow.h +++ b/korganizer/mainwindow.h | |||
@@ -81,6 +81,7 @@ class MainWindow : public QMainWindow | |||
81 | void slotModifiedChanged( bool ); | 81 | void slotModifiedChanged( bool ); |
82 | 82 | ||
83 | void save(); | 83 | void save(); |
84 | void backupAllFiles(); | ||
84 | void saveStopTimer(); | 85 | void saveStopTimer(); |
85 | void configureToolBar( int ); | 86 | void configureToolBar( int ); |
86 | void printSel(); | 87 | void printSel(); |