-rw-r--r-- | bin/kdepim/korganizer/germantranslation.txt | 8 | ||||
-rw-r--r-- | korganizer/mainwindow.cpp | 113 | ||||
-rw-r--r-- | korganizer/mainwindow.h | 1 |
3 files changed, 64 insertions, 58 deletions
diff --git a/bin/kdepim/korganizer/germantranslation.txt b/bin/kdepim/korganizer/germantranslation.txt index 90521ec..2ade5bd 100644 --- a/bin/kdepim/korganizer/germantranslation.txt +++ b/bin/kdepim/korganizer/germantranslation.txt | |||
@@ -1354,13 +1354,13 @@ | |||
1354 | { "The todo\n%1\nhas subtodos!\nDo you want to set\nthe categories for\nall subtodos as well?","Das Todo\n%1\nhat Untertodos!\nMöchten Sie die Kategorien\nauch für alle Untertodos setzen?" }, | 1354 | { "The todo\n%1\nhas subtodos!\nDo you want to set\nthe categories for\nall subtodos as well?","Das Todo\n%1\nhat Untertodos!\nMöchten Sie die Kategorien\nauch für alle Untertodos setzen?" }, |
1355 | { "Backup enabled","Backup angeschaltet" }, | 1355 | { "Backup enabled","Backup angeschaltet" }, |
1356 | { "Use standard backup dir","Standard Backupverzeichnis" }, | 1356 | { "Use standard backup dir","Standard Backupverzeichnis" }, |
1357 | { "Number of Backups:","Anzahl der Backups" }, | 1357 | { "Number of Backups:","Anzahl der Backups" }, |
1358 | { "Make backup every ","Mache ein Backup alle " }, | 1358 | { "Make backup every ","Mache ein Backup alle " }, |
1359 | { " days"," Tage" }, | 1359 | { " days"," Tage" }, |
1360 | { "Creating backup ... please wait ...","Erzeuge Backup ... bitte warten ..." }, | 1360 | { "Creating backup ... please wait ...","Erstelle Backup ... bitte warten ..." }, |
1361 | { "Backup Failed!","Backup Problem!" }, | 1361 | { "Backup Failed!","Backup Problem!" }, |
1362 | { "Try again now","Versuche jetzt nochmal" }, | 1362 | { "Try again now","Versuche jetzt nochmal" }, |
1363 | { "Try again later","Versuche später nochmal" }, | 1363 | { "Try again later","Versuche später nochmal" }, |
1364 | { "Try again tomorrow","Versuche morgen nochmal" }, | 1364 | { "Try again tomorrow","Versuche morgen nochmal" }, |
1365 | { "Disable backup","Schalte Backup ab" }, | 1365 | { "Disable backup","Schalte Backup ab" }, |
1366 | { "<b>Backup directory does not exist: </b>","<b>Backup Verzeichnis existiert nicht: </b>" }, | 1366 | { "<b>Backup directory does not exist: </b>","<b>Backup Verzeichnis existiert nicht: </b>" }, |
@@ -1447,12 +1447,18 @@ | |||
1447 | { "Hide!","Verbergen!" }, | 1447 | { "Hide!","Verbergen!" }, |
1448 | { "Show!","Anzeigen!" }, | 1448 | { "Show!","Anzeigen!" }, |
1449 | { "Details","Details" }, | 1449 | { "Details","Details" }, |
1450 | { "Profession","Beruf" }, | 1450 | { "Profession","Beruf" }, |
1451 | { "Children","Kinder" }, | 1451 | { "Children","Kinder" }, |
1452 | { "Department","Abteilung" }, | 1452 | { "Department","Abteilung" }, |
1453 | { "Backup cancelled","Backup abgebrochen" }, | ||
1454 | { "Backup globally disabled","Backup global abgeschaltet" }, | ||
1455 | { "Backup succesfully finished","Backup erfolgreich beendet" }, | ||
1456 | { "(Hint: You can enable automatic backup in the global settings!)","(Hinweis: Sie können ein automatisches Backup in den globalen Einstellungen konfigurieren!)" }, | ||
1457 | { "This will <b>backup all calendar files</b> to the directory %1 %2","Das schreibt ein <b>Backup aller Kalenderdateien</b> in das Verzeichnis %1 %2" }, | ||
1458 | { "","" }, | ||
1453 | { "","" }, | 1459 | { "","" }, |
1454 | { "","" }, | 1460 | { "","" }, |
1455 | { "","" }, | 1461 | { "","" }, |
1456 | { "","" }, | 1462 | { "","" }, |
1457 | { "","" }, | 1463 | { "","" }, |
1458 | { "","" }, \ No newline at end of file | 1464 | { "","" }, \ No newline at end of file |
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index 48320a5..b9d8742 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp | |||
@@ -1030,17 +1030,18 @@ void MainWindow::initActions() | |||
1030 | action->addTo( importMenu_X ); | 1030 | action->addTo( importMenu_X ); |
1031 | connect( action, SIGNAL( activated() ), SLOT( importOL() ) ); | 1031 | connect( action, SIGNAL( activated() ), SLOT( importOL() ) ); |
1032 | #endif | 1032 | #endif |
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 ); |
1044 | connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) ); | 1045 | connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) ); |
1045 | importMenu->insertSeparator(); | 1046 | importMenu->insertSeparator(); |
1046 | importMenu->insertItem( i18n("Import"), importMenu_X ); | 1047 | importMenu->insertItem( i18n("Import"), importMenu_X ); |
@@ -1842,12 +1843,50 @@ void MainWindow::slotModifiedChanged( bool changed ) | |||
1842 | mCalendarModifiedFlag = true; | 1843 | mCalendarModifiedFlag = true; |
1843 | } | 1844 | } |
1844 | void MainWindow::saveStopTimer() | 1845 | 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 ) { |
1851 | qDebug("KO: Calendar not modified. Nothing saved."); | 1890 | qDebug("KO: Calendar not modified. Nothing saved."); |
1852 | return; | 1891 | return; |
1853 | } | 1892 | } |
@@ -1856,44 +1895,15 @@ void MainWindow::save() | |||
1856 | mSyncManager->setBlockSave(true); | 1895 | mSyncManager->setBlockSave(true); |
1857 | if ( mView->checkAllFileVersions() ) { | 1896 | if ( mView->checkAllFileVersions() ) { |
1858 | if ( KPimGlobalPrefs::instance()->mBackupEnabled ){ | 1897 | if ( KPimGlobalPrefs::instance()->mBackupEnabled ){ |
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 ..." )); |
1897 | qDebug("KO: Start saving data to file!"); | 1907 | qDebug("KO: Start saving data to file!"); |
1898 | mView->saveCalendars(); | 1908 | mView->saveCalendars(); |
1899 | mCalendarModifiedFlag = false; | 1909 | mCalendarModifiedFlag = false; |
@@ -2297,41 +2307,29 @@ void MainWindow::configureAgenda( int item ) | |||
2297 | KOPrefs::instance()->mHourSize=item; | 2307 | KOPrefs::instance()->mHourSize=item; |
2298 | mView->viewManager()->agendaView()->updateConfig(); | 2308 | mView->viewManager()->agendaView()->updateConfig(); |
2299 | } | 2309 | } |
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 == "" ) |
2335 | return; | 2333 | return; |
2336 | QFileInfo info; | 2334 | QFileInfo info; |
2337 | info.setFile( fn ); | 2335 | info.setFile( fn ); |
@@ -2356,12 +2354,13 @@ void MainWindow::loadCalendar() | |||
2356 | if ( loadbup ) { | 2354 | if ( loadbup ) { |
2357 | mView->openCalendar( fn ); | 2355 | mView->openCalendar( fn ); |
2358 | KOPrefs::instance()->mLastLoadFile = fn; | 2356 | KOPrefs::instance()->mLastLoadFile = fn; |
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() |
2365 | { | 2364 | { |
2366 | importFile( KOPrefs::instance()->mLastImportFile, false ); | 2365 | importFile( KOPrefs::instance()->mLastImportFile, false ); |
2367 | } | 2366 | } |
diff --git a/korganizer/mainwindow.h b/korganizer/mainwindow.h index 9a8bc7f..c9817c3 100644 --- a/korganizer/mainwindow.h +++ b/korganizer/mainwindow.h | |||
@@ -78,12 +78,13 @@ class MainWindow : public QMainWindow | |||
78 | void importFile( QString, bool ); | 78 | void importFile( QString, bool ); |
79 | void quickImportIcal(); | 79 | void quickImportIcal(); |
80 | 80 | ||
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(); |
87 | void printCal(); | 88 | void printCal(); |
88 | void printListView(); | 89 | void printListView(); |
89 | void saveCalendar(); | 90 | void saveCalendar(); |