author | ulf69 <ulf69> | 2004-10-20 18:38:39 (UTC) |
---|---|---|
committer | ulf69 <ulf69> | 2004-10-20 18:38:39 (UTC) |
commit | 8e00329a4a5f0b66d26d20f067ab6aefca17f17a (patch) (unidiff) | |
tree | 9fa40d29baece91dc854b7e124c3bbc2962a0729 | |
parent | 13243e1fb1855d306d45a84365f55e20efeff69d (diff) | |
download | kdepimpi-8e00329a4a5f0b66d26d20f067ab6aefca17f17a.zip kdepimpi-8e00329a4a5f0b66d26d20f067ab6aefca17f17a.tar.gz kdepimpi-8e00329a4a5f0b66d26d20f067ab6aefca17f17a.tar.bz2 |
removed dead code
-rw-r--r-- | pwmanager/pwmanager/pwm.cpp | 30 | ||||
-rw-r--r-- | pwmanager/pwmanager/pwmdoc.cpp | 25 |
2 files changed, 27 insertions, 28 deletions
diff --git a/pwmanager/pwmanager/pwm.cpp b/pwmanager/pwmanager/pwm.cpp index c511661..66d26d6 100644 --- a/pwmanager/pwmanager/pwm.cpp +++ b/pwmanager/pwmanager/pwm.cpp | |||
@@ -697,66 +697,66 @@ void PwM::editPwd_slot3(const QString *category, const int *index, | |||
697 | PwMDataItem currItem; | 697 | PwMDataItem currItem; |
698 | if (!doc->getEntry(curCategory, curEntryIndex, &currItem, true)) { | 698 | if (!doc->getEntry(curCategory, curEntryIndex, &currItem, true)) { |
699 | doc->timer()->putLock(DocTimer::id_autoLockTimer); | 699 | doc->timer()->putLock(DocTimer::id_autoLockTimer); |
700 | return; | 700 | return; |
701 | } | 701 | } |
702 | BUG_ON(currItem.binary); | 702 | BUG_ON(currItem.binary); |
703 | 703 | ||
704 | AddEntryWndImpl w; | 704 | AddEntryWndImpl w; |
705 | vector<string> catList; | 705 | vector<string> catList; |
706 | doc->getCategoryList(&catList); | 706 | doc->getCategoryList(&catList); |
707 | unsigned i, size = catList.size(); | 707 | unsigned i, size = catList.size(); |
708 | for (i = 0; i < size; ++i) { | 708 | for (i = 0; i < size; ++i) { |
709 | w.addCategory(catList[i].c_str()); | 709 | w.addCategory(catList[i].c_str()); |
710 | } | 710 | } |
711 | w.setCurrCategory(curCategory); | 711 | w.setCurrCategory(curCategory); |
712 | w.setDescription(currItem.desc.c_str()); | 712 | w.setDescription(currItem.desc.c_str()); |
713 | w.setUsername(currItem.name.c_str()); | 713 | w.setUsername(currItem.name.c_str()); |
714 | w.setPassword(currItem.pw.c_str()); | 714 | w.setPassword(currItem.pw.c_str()); |
715 | w.setUrl(currItem.url.c_str()); | 715 | w.setUrl(currItem.url.c_str()); |
716 | w.setLauncher(currItem.launcher.c_str()); | 716 | w.setLauncher(currItem.launcher.c_str()); |
717 | w.setComment(currItem.comment.c_str()); | 717 | w.setComment(currItem.comment.c_str()); |
718 | if (w.exec() == 1) { | 718 | if (w.exec() == 1) { |
719 | currItem.desc = w.getDescription().latin1(); | 719 | currItem.desc = w.getDescription().latin1(); |
720 | currItem.name = w.getUsername().latin1(); | 720 | currItem.name = w.getUsername().latin1(); |
721 | currItem.pw = w.getPassword().latin1(); | 721 | currItem.pw = w.getPassword().latin1(); |
722 | currItem.comment = w.getComment().latin1(); | 722 | currItem.comment = w.getComment().latin1(); |
723 | currItem.url = w.getUrl().latin1(); | 723 | currItem.url = w.getUrl().latin1(); |
724 | currItem.launcher = w.getLauncher().latin1(); | 724 | currItem.launcher = w.getLauncher().latin1(); |
725 | if (!doc->editEntry(curCategory, w.getCategory(), | 725 | if (!doc->editEntry(curCategory, w.getCategory(), |
726 | curEntryIndex, &currItem)) { | 726 | curEntryIndex, &currItem)) { |
727 | KMessageBox::error(this, | 727 | KMessageBox::error(this, |
728 | i18n("Couldn't edit the entry.\n" | 728 | i18n("Couldn't edit the entry.\n" |
729 | "Maybe you changed the category and " | 729 | "Maybe you changed the category and\n" |
730 | "this entry is already present in the new " | 730 | "this entry is already present\nin the new " |
731 | "category?"), | 731 | "category?"), |
732 | i18n("couldn't edit entry.")); | 732 | i18n("couldn't edit entry.")); |
733 | doc->timer()->putLock(DocTimer::id_autoLockTimer); | 733 | doc->timer()->putLock(DocTimer::id_autoLockTimer); |
734 | return; | 734 | return; |
735 | } | 735 | } |
736 | } | 736 | } |
737 | doc->timer()->putLock(DocTimer::id_autoLockTimer); | 737 | doc->timer()->putLock(DocTimer::id_autoLockTimer); |
738 | } | 738 | } |
739 | 739 | ||
740 | void PwM::deletePwd_slot() | 740 | void PwM::deletePwd_slot() |
741 | { | 741 | { |
742 | PWM_ASSERT(curDoc()); | 742 | PWM_ASSERT(curDoc()); |
743 | if (curDoc()->isDocEmpty()) | 743 | if (curDoc()->isDocEmpty()) |
744 | return; | 744 | return; |
745 | if (curDoc()->isDeepLocked()) | 745 | if (curDoc()->isDeepLocked()) |
746 | return; | 746 | return; |
747 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); | 747 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); |
748 | unsigned int curEntryIndex = 0; | 748 | unsigned int curEntryIndex = 0; |
749 | if (!(view->getCurEntryIndex(&curEntryIndex))) { | 749 | if (!(view->getCurEntryIndex(&curEntryIndex))) { |
750 | printDebug("couldn't get index"); | 750 | printDebug("couldn't get index"); |
751 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); | 751 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); |
752 | return; | 752 | return; |
753 | } | 753 | } |
754 | 754 | ||
755 | PwMDataItem currItem; | 755 | PwMDataItem currItem; |
756 | QString curCategory = view->getCurrentCategory(); | 756 | QString curCategory = view->getCurrentCategory(); |
757 | if (!curDoc()->getEntry(curCategory, curEntryIndex, &currItem)) { | 757 | if (!curDoc()->getEntry(curCategory, curEntryIndex, &currItem)) { |
758 | printDebug("couldn't get entry"); | 758 | printDebug("couldn't get entry"); |
759 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); | 759 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); |
760 | return; | 760 | return; |
761 | } | 761 | } |
762 | if (KMessageBox:: | 762 | if (KMessageBox:: |
@@ -886,116 +886,116 @@ void PwM::find_slot() | |||
886 | if (curDoc()->isDeepLocked()) | 886 | if (curDoc()->isDeepLocked()) |
887 | return; | 887 | return; |
888 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); | 888 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); |
889 | FindWndImpl findWnd(view); | 889 | FindWndImpl findWnd(view); |
890 | findWnd.exec(); | 890 | findWnd.exec(); |
891 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); | 891 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); |
892 | } | 892 | } |
893 | 893 | ||
894 | void PwM::exportToText() | 894 | void PwM::exportToText() |
895 | { | 895 | { |
896 | PWM_ASSERT(curDoc()); | 896 | PWM_ASSERT(curDoc()); |
897 | if (curDoc()->isDocEmpty()) { | 897 | if (curDoc()->isDocEmpty()) { |
898 | KMessageBox::information(this, | 898 | KMessageBox::information(this, |
899 | i18n | 899 | i18n |
900 | ("Sorry, there's nothing to export.\n" | 900 | ("Sorry, there's nothing to export.\n" |
901 | "Please first add some passwords."), | 901 | "Please first add some passwords."), |
902 | i18n("nothing to do")); | 902 | i18n("nothing to do")); |
903 | return; | 903 | return; |
904 | } | 904 | } |
905 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); | 905 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); |
906 | QString fn(KFileDialog::getSaveFileName(QString::null, | 906 | QString fn(KFileDialog::getSaveFileName(QString::null, |
907 | i18n("*|plain-text file"), | 907 | i18n("*|plain-text file"), |
908 | this)); | 908 | this)); |
909 | if (fn == "") { | 909 | if (fn == "") { |
910 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); | 910 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); |
911 | return; | 911 | return; |
912 | } | 912 | } |
913 | 913 | ||
914 | PwMerror ret = curDoc()->exportToText(&fn); | 914 | PwMerror ret = curDoc()->exportToText(&fn); |
915 | if (ret != e_success) { | 915 | if (ret != e_success) { |
916 | KMessageBox::error(this, | 916 | KMessageBox::error(this, |
917 | i18n("Error: Couldn't write to file.\n" | 917 | i18n("Error: Couldn't write to file.\n" |
918 | "Please check if you have permission to write " | 918 | "Please check if you have permission to write\n" |
919 | "to the file in that directory."), | 919 | "to the file in that directory."), |
920 | i18n("error while writing")); | 920 | i18n("error while writing")); |
921 | } else | 921 | } else |
922 | showStatMsg(i18n("Successfully exported data.")); | 922 | showStatMsg(i18n("Successfully exported data.")); |
923 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); | 923 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); |
924 | } | 924 | } |
925 | 925 | ||
926 | bool PwM::importFromText() | 926 | bool PwM::importFromText() |
927 | { | 927 | { |
928 | if (!isVirgin()) { | 928 | if (!isVirgin()) { |
929 | if (KMessageBox::questionYesNo(this, | 929 | if (KMessageBox::questionYesNo(this, |
930 | i18n("Do you want to import the data " | 930 | i18n("Do you want to import the data\n" |
931 | "into the current document? (If you " | 931 | "into the current document? (If you\n" |
932 | "select \"no\", a new document will be " | 932 | "select \"no\", a new document will be\n" |
933 | "opened.)"), | 933 | "opened.)"), |
934 | i18n("import into this document?")) | 934 | i18n("import into this document?")) |
935 | == KMessageBox::No) { | 935 | == KMessageBox::No) { |
936 | // import the data to a new window. | 936 | // import the data to a new window. |
937 | PwM *newInstance = init->createMainWnd(); | 937 | PwM *newInstance = init->createMainWnd(); |
938 | bool ok = newInstance->importFromText(); | 938 | bool ok = newInstance->importFromText(); |
939 | if (!ok) { | 939 | if (!ok) { |
940 | newInstance->setForceQuit(true); | 940 | newInstance->setForceQuit(true); |
941 | delete_and_null(newInstance); | 941 | delete_and_null(newInstance); |
942 | } | 942 | } |
943 | return ok; | 943 | return ok; |
944 | } | 944 | } |
945 | } | 945 | } |
946 | 946 | ||
947 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); | 947 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); |
948 | PwMerror ret; | 948 | PwMerror ret; |
949 | QString path(KFileDialog::getOpenFileName(QString::null, | 949 | QString path(KFileDialog::getOpenFileName(QString::null, |
950 | i18n("*|PWM-exported text file"), | 950 | i18n("*|PWM-exported text file"), |
951 | this)); | 951 | this)); |
952 | if (path == "") | 952 | if (path == "") |
953 | goto cancelImport; | 953 | goto cancelImport; |
954 | 954 | ||
955 | ret = curDoc()->importFromText(&path, 0); | 955 | ret = curDoc()->importFromText(&path, 0); |
956 | if (ret == e_fileFormat) { | 956 | if (ret == e_fileFormat) { |
957 | KMessageBox::error(this, | 957 | KMessageBox::error(this, |
958 | i18n("Could not read file-format.\n" | 958 | i18n("Could not read file-format.\n" |
959 | "This seems to be _not_ a valid file " | 959 | "This seems to be _not_ a valid file\n" |
960 | "exported by PwM."), | 960 | "exported by PwM."), |
961 | i18n("invalid file-format")); | 961 | i18n("invalid file-format")); |
962 | goto cancelImport; | 962 | goto cancelImport; |
963 | } else if (ret == e_invalidArg) { | 963 | } else if (ret == e_invalidArg) { |
964 | BUG(); | 964 | BUG(); |
965 | goto cancelImport; | 965 | goto cancelImport; |
966 | } else if (ret != e_success) { | 966 | } else if (ret != e_success) { |
967 | KMessageBox::error(this, | 967 | KMessageBox::error(this, |
968 | i18n("Could not import file!\n" | 968 | i18n("Could not import file!\n" |
969 | "Do you have permission to read this file? " | 969 | "Do you have permission to read this file?\n" |
970 | "Do you have enough free memory?"), | 970 | "Do you have enough free memory?"), |
971 | i18n("import failed")); | 971 | i18n("import failed")); |
972 | goto cancelImport; | 972 | goto cancelImport; |
973 | } | 973 | } |
974 | setVirgin(false); | 974 | setVirgin(false); |
975 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); | 975 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); |
976 | return true; | 976 | return true; |
977 | 977 | ||
978 | cancelImport: | 978 | cancelImport: |
979 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); | 979 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); |
980 | return false; | 980 | return false; |
981 | } | 981 | } |
982 | 982 | ||
983 | void PwM::exportToGpasman() | 983 | void PwM::exportToGpasman() |
984 | { | 984 | { |
985 | PWM_ASSERT(curDoc()); | 985 | PWM_ASSERT(curDoc()); |
986 | if (curDoc()->isDocEmpty()) { | 986 | if (curDoc()->isDocEmpty()) { |
987 | KMessageBox::information(this, | 987 | KMessageBox::information(this, |
988 | i18n | 988 | i18n |
989 | ("Sorry, there's nothing to export.\n" | 989 | ("Sorry, there's nothing to export.\n" |
990 | "Please first add some passwords."), | 990 | "Please first add some passwords."), |
991 | i18n("nothing to do")); | 991 | i18n("nothing to do")); |
992 | return; | 992 | return; |
993 | } | 993 | } |
994 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); | 994 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); |
995 | QString fn(KFileDialog::getSaveFileName(QString::null, | 995 | QString fn(KFileDialog::getSaveFileName(QString::null, |
996 | i18n("*|Gpasman or Kpasman file"), | 996 | i18n("*|Gpasman or Kpasman file"), |
997 | this)); | 997 | this)); |
998 | if (fn == "") { | 998 | if (fn == "") { |
999 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); | 999 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); |
1000 | return; | 1000 | return; |
1001 | } | 1001 | } |
@@ -1020,96 +1020,96 @@ void PwM::exportToKWallet() | |||
1020 | { | 1020 | { |
1021 | #ifdef CONFIG_KWALLETIF | 1021 | #ifdef CONFIG_KWALLETIF |
1022 | if (!checkAndAskForKWalletEmu()) | 1022 | if (!checkAndAskForKWalletEmu()) |
1023 | return; | 1023 | return; |
1024 | PWM_ASSERT(curDoc()); | 1024 | PWM_ASSERT(curDoc()); |
1025 | if (curDoc()->isDocEmpty()) { | 1025 | if (curDoc()->isDocEmpty()) { |
1026 | KMessageBox::information(this, | 1026 | KMessageBox::information(this, |
1027 | i18n | 1027 | i18n |
1028 | ("Sorry, there's nothing to export.\n" | 1028 | ("Sorry, there's nothing to export.\n" |
1029 | "Please first add some passwords."), | 1029 | "Please first add some passwords."), |
1030 | i18n("nothing to do")); | 1030 | i18n("nothing to do")); |
1031 | init->initKWalletEmu(); | 1031 | init->initKWalletEmu(); |
1032 | return; | 1032 | return; |
1033 | } | 1033 | } |
1034 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); | 1034 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); |
1035 | KWalletIf walletIf(this); | 1035 | KWalletIf walletIf(this); |
1036 | if (walletIf.kwalletExport(curDoc())) { | 1036 | if (walletIf.kwalletExport(curDoc())) { |
1037 | KMessageBox::information(this, | 1037 | KMessageBox::information(this, |
1038 | i18n("Successfully exported the data of the current " | 1038 | i18n("Successfully exported the data of the current " |
1039 | "document to KWallet."), | 1039 | "document to KWallet."), |
1040 | i18n("Successfully exported data.")); | 1040 | i18n("Successfully exported data.")); |
1041 | showStatMsg(i18n("Successfully exported data.")); | 1041 | showStatMsg(i18n("Successfully exported data.")); |
1042 | } | 1042 | } |
1043 | init->initKWalletEmu(); | 1043 | init->initKWalletEmu(); |
1044 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); | 1044 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); |
1045 | #endif // CONFIG_KWALLETIF | 1045 | #endif // CONFIG_KWALLETIF |
1046 | } | 1046 | } |
1047 | 1047 | ||
1048 | bool PwM::importFromGpasman() | 1048 | bool PwM::importFromGpasman() |
1049 | { | 1049 | { |
1050 | if (!isVirgin()) { | 1050 | if (!isVirgin()) { |
1051 | if (KMessageBox::questionYesNo(this, | 1051 | if (KMessageBox::questionYesNo(this, |
1052 | i18n("Do you want to import the data " | 1052 | i18n("Do you want to import the data\n" |
1053 | "into the current document? (If you " | 1053 | "into the current document? (If you\n" |
1054 | "select \"no\", a new document will be " | 1054 | "select \"no\", a new document will be\n" |
1055 | "opened.)"), | 1055 | "opened.)"), |
1056 | i18n("import into this document?")) | 1056 | i18n("import into this document?")) |
1057 | == KMessageBox::No) { | 1057 | == KMessageBox::No) { |
1058 | // import the data to a new window. | 1058 | // import the data to a new window. |
1059 | PwM *newInstance = init->createMainWnd(); | 1059 | PwM *newInstance = init->createMainWnd(); |
1060 | bool ok = newInstance->importFromGpasman(); | 1060 | bool ok = newInstance->importFromGpasman(); |
1061 | if (!ok) { | 1061 | if (!ok) { |
1062 | newInstance->setForceQuit(true); | 1062 | newInstance->setForceQuit(true); |
1063 | delete_and_null(newInstance); | 1063 | delete_and_null(newInstance); |
1064 | } | 1064 | } |
1065 | return ok; | 1065 | return ok; |
1066 | } | 1066 | } |
1067 | } | 1067 | } |
1068 | 1068 | ||
1069 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); | 1069 | curDoc()->timer()->getLock(DocTimer::id_autoLockTimer); |
1070 | PwMerror ret; | 1070 | PwMerror ret; |
1071 | QString path(KFileDialog::getOpenFileName(QString::null, | 1071 | QString path(KFileDialog::getOpenFileName(QString::null, |
1072 | i18n("*|Gpasman or Kpasman file"), this)); | 1072 | i18n("*|Gpasman or Kpasman file"), this)); |
1073 | if (path == "") | 1073 | if (path == "") |
1074 | goto cancelImport; | 1074 | goto cancelImport; |
1075 | ret = curDoc()->importFromGpasman(&path); | 1075 | ret = curDoc()->importFromGpasman(&path); |
1076 | if (ret == e_wrongPw) { | 1076 | if (ret == e_wrongPw) { |
1077 | if (KMessageBox::questionYesNo(this, | 1077 | if (KMessageBox::questionYesNo(this, |
1078 | i18n | 1078 | i18n |
1079 | ("This is probably the wrong master-password" | 1079 | ("This is probably the wrong master-password\n" |
1080 | "you have typed in.\n" | 1080 | "you have typed in.\n" |
1081 | "There is no real way to determine the " | 1081 | "There is no real way to determine the\n" |
1082 | "correctness of the password in the Gpasman " | 1082 | "correctness of the password in the Gpasman\n" |
1083 | "file-format. But I think this " | 1083 | "file-format. But I think this\n" |
1084 | "password ist wrong.\n" | 1084 | "password ist wrong.\n" |
1085 | "Do you want to continue nevertheless?"), | 1085 | "Do you want to continue nevertheless?"), |
1086 | i18n("password error")) | 1086 | i18n("password error")) |
1087 | == KMessageBox::No) { | 1087 | == KMessageBox::No) { |
1088 | goto cancelImport; | 1088 | goto cancelImport; |
1089 | } | 1089 | } |
1090 | } else if (ret != e_success) { | 1090 | } else if (ret != e_success) { |
1091 | KMessageBox::error(this, | 1091 | KMessageBox::error(this, |
1092 | i18n("Could not import file!\n" | 1092 | i18n("Could not import file!\n" |
1093 | "Do you have permission to read this file?"), | 1093 | "Do you have permission to read this file?"), |
1094 | i18n("import failed")); | 1094 | i18n("import failed")); |
1095 | goto cancelImport; | 1095 | goto cancelImport; |
1096 | } | 1096 | } |
1097 | setVirgin(false); | 1097 | setVirgin(false); |
1098 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); | 1098 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); |
1099 | return true; | 1099 | return true; |
1100 | 1100 | ||
1101 | cancelImport: | 1101 | cancelImport: |
1102 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); | 1102 | curDoc()->timer()->putLock(DocTimer::id_autoLockTimer); |
1103 | return false; | 1103 | return false; |
1104 | } | 1104 | } |
1105 | 1105 | ||
1106 | #ifdef CONFIG_KWALLETIF | 1106 | #ifdef CONFIG_KWALLETIF |
1107 | bool PwM::checkAndAskForKWalletEmu() | 1107 | bool PwM::checkAndAskForKWalletEmu() |
1108 | { | 1108 | { |
1109 | if (init->kwalletEmu()) { | 1109 | if (init->kwalletEmu()) { |
1110 | /* KWallet emulation is enabled. We can't import/export | 1110 | /* KWallet emulation is enabled. We can't import/export |
1111 | * data from/to it, while emulation is active. | 1111 | * data from/to it, while emulation is active. |
1112 | */ | 1112 | */ |
1113 | if (KMessageBox::questionYesNo(this, | 1113 | if (KMessageBox::questionYesNo(this, |
1114 | i18n("KWallet emulation is enabled.\n" | 1114 | i18n("KWallet emulation is enabled.\n" |
1115 | "You can't import or export data from/to " | 1115 | "You can't import or export data from/to " |
diff --git a/pwmanager/pwmanager/pwmdoc.cpp b/pwmanager/pwmanager/pwmdoc.cpp index 8869f3a..86b6273 100644 --- a/pwmanager/pwmanager/pwmdoc.cpp +++ b/pwmanager/pwmanager/pwmdoc.cpp | |||
@@ -1235,89 +1235,95 @@ bool PwMDoc::getEntry(unsigned int category, unsigned int index, | |||
1235 | return true; | 1235 | return true; |
1236 | } | 1236 | } |
1237 | 1237 | ||
1238 | PwMerror PwMDoc::getCommentByLvp(const QString &category, int listViewPos, | 1238 | PwMerror PwMDoc::getCommentByLvp(const QString &category, int listViewPos, |
1239 | string *foundComment) | 1239 | string *foundComment) |
1240 | { | 1240 | { |
1241 | PWM_ASSERT(foundComment); | 1241 | PWM_ASSERT(foundComment); |
1242 | unsigned int cat = 0; | 1242 | unsigned int cat = 0; |
1243 | 1243 | ||
1244 | if (!findCategory(category, &cat)) | 1244 | if (!findCategory(category, &cat)) |
1245 | return e_invalidArg; | 1245 | return e_invalidArg; |
1246 | 1246 | ||
1247 | unsigned int i, entries = numEntries(cat); | 1247 | unsigned int i, entries = numEntries(cat); |
1248 | for (i = 0; i < entries; ++i) { | 1248 | for (i = 0; i < entries; ++i) { |
1249 | if (dti.dta[cat].d[i].listViewPos == listViewPos) { | 1249 | if (dti.dta[cat].d[i].listViewPos == listViewPos) { |
1250 | *foundComment = dti.dta[cat].d[i].comment; | 1250 | *foundComment = dti.dta[cat].d[i].comment; |
1251 | if (dti.dta[cat].d[i].binary) | 1251 | if (dti.dta[cat].d[i].binary) |
1252 | return e_binEntry; | 1252 | return e_binEntry; |
1253 | return e_normalEntry; | 1253 | return e_normalEntry; |
1254 | } | 1254 | } |
1255 | } | 1255 | } |
1256 | BUG(); | 1256 | BUG(); |
1257 | return e_generic; | 1257 | return e_generic; |
1258 | } | 1258 | } |
1259 | 1259 | ||
1260 | bool PwMDoc::compressDta(string *d, char algo) | 1260 | bool PwMDoc::compressDta(string *d, char algo) |
1261 | { | 1261 | { |
1262 | PWM_ASSERT(d); | 1262 | PWM_ASSERT(d); |
1263 | switch (algo) { | 1263 | switch (algo) { |
1264 | case PWM_COMPRESS_GZIP: { | 1264 | case PWM_COMPRESS_GZIP: { |
1265 | CompressGzip comp; | 1265 | CompressGzip comp; |
1266 | return comp.compress(d); | 1266 | return comp.compress(d); |
1267 | /*US } case PWM_COMPRESS_BZIP2: { | 1267 | } |
1268 | #ifndef PWM_EMBEDDED | ||
1269 | case PWM_COMPRESS_BZIP2: { | ||
1268 | CompressBzip2 comp; | 1270 | CompressBzip2 comp; |
1269 | return comp.compress(d); | 1271 | return comp.compress(d); |
1270 | */ | 1272 | } |
1271 | } case PWM_COMPRESS_NONE: { | 1273 | #endif |
1274 | case PWM_COMPRESS_NONE: { | ||
1272 | return true; | 1275 | return true; |
1273 | } default: { | 1276 | } default: { |
1274 | BUG(); | 1277 | BUG(); |
1275 | } | 1278 | } |
1276 | } | 1279 | } |
1277 | return false; | 1280 | return false; |
1278 | } | 1281 | } |
1279 | 1282 | ||
1280 | bool PwMDoc::decompressDta(string *d, char algo) | 1283 | bool PwMDoc::decompressDta(string *d, char algo) |
1281 | { | 1284 | { |
1282 | PWM_ASSERT(d); | 1285 | PWM_ASSERT(d); |
1283 | switch (algo) { | 1286 | switch (algo) { |
1284 | case PWM_COMPRESS_GZIP: { | 1287 | case PWM_COMPRESS_GZIP: { |
1285 | CompressGzip comp; | 1288 | CompressGzip comp; |
1286 | return comp.decompress(d); | 1289 | return comp.decompress(d); |
1287 | /*US } case PWM_COMPRESS_BZIP2: { | 1290 | } |
1291 | #ifndef PWM_EMBEDDED | ||
1292 | case PWM_COMPRESS_BZIP2: { | ||
1288 | CompressBzip2 comp; | 1293 | CompressBzip2 comp; |
1289 | return comp.decompress(d); | 1294 | return comp.decompress(d); |
1290 | */ | 1295 | } |
1291 | } case PWM_COMPRESS_NONE: { | 1296 | #endif |
1297 | case PWM_COMPRESS_NONE: { | ||
1292 | return true; | 1298 | return true; |
1293 | } | 1299 | } |
1294 | } | 1300 | } |
1295 | return false; | 1301 | return false; |
1296 | } | 1302 | } |
1297 | 1303 | ||
1298 | PwMerror PwMDoc::encrypt(string *d, const QString *pw, QFile *f, char algo) | 1304 | PwMerror PwMDoc::encrypt(string *d, const QString *pw, QFile *f, char algo) |
1299 | { | 1305 | { |
1300 | PWM_ASSERT(d); | 1306 | PWM_ASSERT(d); |
1301 | PWM_ASSERT(pw); | 1307 | PWM_ASSERT(pw); |
1302 | PWM_ASSERT(f); | 1308 | PWM_ASSERT(f); |
1303 | 1309 | ||
1304 | size_t encSize; | 1310 | size_t encSize; |
1305 | byte *encrypted = 0; | 1311 | byte *encrypted = 0; |
1306 | 1312 | ||
1307 | switch (algo) { | 1313 | switch (algo) { |
1308 | case PWM_CRYPT_BLOWFISH: { | 1314 | case PWM_CRYPT_BLOWFISH: { |
1309 | Blowfish::padNull(d); | 1315 | Blowfish::padNull(d); |
1310 | encSize = d->length(); | 1316 | encSize = d->length(); |
1311 | encrypted = new byte[encSize]; | 1317 | encrypted = new byte[encSize]; |
1312 | Blowfish bf; | 1318 | Blowfish bf; |
1313 | if (bf.bf_setkey((byte *) pw->latin1(), pw->length())) { | 1319 | if (bf.bf_setkey((byte *) pw->latin1(), pw->length())) { |
1314 | delete [] encrypted; | 1320 | delete [] encrypted; |
1315 | return e_weakPw; | 1321 | return e_weakPw; |
1316 | } | 1322 | } |
1317 | bf.bf_encrypt((byte *) encrypted, (byte *) d->c_str(), encSize); | 1323 | bf.bf_encrypt((byte *) encrypted, (byte *) d->c_str(), encSize); |
1318 | break; | 1324 | break; |
1319 | } | 1325 | } |
1320 | case PWM_CRYPT_AES128: | 1326 | case PWM_CRYPT_AES128: |
1321 | /*... fall through */ | 1327 | /*... fall through */ |
1322 | case PWM_CRYPT_AES192: | 1328 | case PWM_CRYPT_AES192: |
1323 | case PWM_CRYPT_AES256: | 1329 | case PWM_CRYPT_AES256: |
@@ -3094,163 +3100,156 @@ PwMerror PwMDoc::syncronize(KSyncManager* manager, PwMDoc* syncLocal , PwMDoc* s | |||
3094 | 3100 | ||
3095 | uid = er[ incCounter ]; | 3101 | uid = er[ incCounter ]; |
3096 | qDebug("sync uid %s from remote file", uid.latin1()); | 3102 | qDebug("sync uid %s from remote file", uid.latin1()); |
3097 | 3103 | ||
3098 | qApp->processEvents(); | 3104 | qApp->processEvents(); |
3099 | 3105 | ||
3100 | inLocal = syncLocal->findEntryByID( uid, &catLocal, &indexLocal ); | 3106 | inLocal = syncLocal->findEntryByID( uid, &catLocal, &indexLocal ); |
3101 | inRemote = syncRemote->findEntryByID( uid, &catRemote, &indexRemote ); | 3107 | inRemote = syncRemote->findEntryByID( uid, &catRemote, &indexRemote ); |
3102 | PWM_ASSERT(inRemote); | 3108 | PWM_ASSERT(inRemote); |
3103 | if ( inLocal != 0 ) { // maybe conflict - same uid in both files | 3109 | if ( inLocal != 0 ) { // maybe conflict - same uid in both files |
3104 | if ( (take = takePwMDataItem( inLocal, inRemote, mLastSync, mode, fullDateRange) ) ) { | 3110 | if ( (take = takePwMDataItem( inLocal, inRemote, mLastSync, mode, fullDateRange) ) ) { |
3105 | qDebug("take %d %s ", take, inLocal->desc.c_str()); | 3111 | qDebug("take %d %s ", take, inLocal->desc.c_str()); |
3106 | if ( take == 3 ) | 3112 | if ( take == 3 ) |
3107 | return e_syncError; | 3113 | return e_syncError; |
3108 | if ( take == 1 ) {// take local | 3114 | if ( take == 1 ) {// take local |
3109 | int oldlistpos = inRemote->listViewPos; | 3115 | int oldlistpos = inRemote->listViewPos; |
3110 | (*inRemote) = (*inLocal); | 3116 | (*inRemote) = (*inLocal); |
3111 | inRemote->listViewPos = oldlistpos; | 3117 | inRemote->listViewPos = oldlistpos; |
3112 | ++changedRemote; | 3118 | ++changedRemote; |
3113 | } else { // take == 2 take remote | 3119 | } else { // take == 2 take remote |
3114 | int oldlistpos = inLocal->listViewPos; | 3120 | int oldlistpos = inLocal->listViewPos; |
3115 | (*inLocal) = (*inRemote); | 3121 | (*inLocal) = (*inRemote); |
3116 | inLocal->listViewPos = oldlistpos; | 3122 | inLocal->listViewPos = oldlistpos; |
3117 | ++changedLocal; | 3123 | ++changedLocal; |
3118 | } | 3124 | } |
3119 | } | 3125 | } |
3120 | } else { // no conflict | 3126 | } else { // no conflict |
3121 | if ( inRemote->meta.update > mLastSync || mode == 5 ) { | 3127 | if ( inRemote->meta.update > mLastSync || mode == 5 ) { |
3122 | inRemote->meta.update = modifiedSync; | 3128 | inRemote->meta.update = modifiedSync; |
3123 | 3129 | ||
3124 | //first check if we have a matching category in the local file | 3130 | //first check if we have a matching category in the local file |
3125 | const string* remotecat = syncRemote->getCategory(catRemote); | 3131 | const string* remotecat = syncRemote->getCategory(catRemote); |
3126 | //US syncRemote->insertAddressee( inRemote, false ); | ||
3127 | //US syncLocal->insertAddressee( inRemote, false ); | ||
3128 | syncLocal->addEntry(remotecat->c_str(), inRemote, true, false); | 3132 | syncLocal->addEntry(remotecat->c_str(), inRemote, true, false); |
3129 | 3133 | ||
3130 | ++addedPasswordsLocal; | 3134 | ++addedPasswordsLocal; |
3131 | } else { | 3135 | } else { |
3132 | // pending checkExternSyncAddressee(addresseeRSyncSharp, inR); | 3136 | // pending checkExternSyncAddressee(addresseeRSyncSharp, inR); |
3133 | syncRemote->delEntry(catRemote, indexRemote, true); | 3137 | syncRemote->delEntry(catRemote, indexRemote, true); |
3134 | //USsyncRemote->removeAddressee( inRemote ); | ||
3135 | ++deletedPasswordsRemote; | 3138 | ++deletedPasswordsRemote; |
3136 | } | 3139 | } |
3137 | } | 3140 | } |
3138 | 3141 | ||
3139 | ++incCounter; | 3142 | ++incCounter; |
3140 | } | 3143 | } |
3141 | 3144 | ||
3142 | 3145 | ||
3143 | er.clear(); | 3146 | er.clear(); |
3144 | QStringList el = syncLocal->getIDEntryList(); | 3147 | QStringList el = syncLocal->getIDEntryList(); |
3145 | modulo = (el.count()/10)+1; | 3148 | modulo = (el.count()/10)+1; |
3146 | 3149 | ||
3147 | manager->showProgressBar(0, i18n("Add / remove addressees"), el.count()); | 3150 | manager->showProgressBar(0, i18n("Add / remove addressees"), el.count()); |
3148 | incCounter = 0; | 3151 | incCounter = 0; |
3149 | while ( incCounter < el.count()) { | 3152 | while ( incCounter < el.count()) { |
3150 | qApp->processEvents(); | 3153 | qApp->processEvents(); |
3151 | if (manager->isProgressBarCanceled()) | 3154 | if (manager->isProgressBarCanceled()) |
3152 | return e_syncError; | 3155 | return e_syncError; |
3153 | if ( incCounter % modulo == 0 ) | 3156 | if ( incCounter % modulo == 0 ) |
3154 | manager->showProgressBar(incCounter); | 3157 | manager->showProgressBar(incCounter); |
3155 | uid = el[ incCounter ]; | 3158 | uid = el[ incCounter ]; |
3156 | qDebug("sync uid %s from local file", uid.latin1()); | 3159 | qDebug("sync uid %s from local file", uid.latin1()); |
3157 | 3160 | ||
3158 | inLocal = syncLocal->findEntryByID( uid, &catLocal, &indexLocal ); | 3161 | inLocal = syncLocal->findEntryByID( uid, &catLocal, &indexLocal ); |
3159 | inRemote = syncRemote->findEntryByID( uid, &catRemote, &indexRemote ); | 3162 | inRemote = syncRemote->findEntryByID( uid, &catRemote, &indexRemote ); |
3160 | PWM_ASSERT(inLocal); | 3163 | PWM_ASSERT(inLocal); |
3161 | 3164 | ||
3162 | if ( inRemote == 0 ) { | 3165 | if ( inRemote == 0 ) { |
3163 | if ( inLocal->meta.update < mLastSync && mode != 4 ) { | 3166 | if ( inLocal->meta.update < mLastSync && mode != 4 ) { |
3164 | // pending checkExternSyncAddressee(addresseeLSyncSharp, inL); | 3167 | // pending checkExternSyncAddressee(addresseeLSyncSharp, inL); |
3165 | syncLocal->delEntry(catLocal, indexLocal, true); | 3168 | syncLocal->delEntry(catLocal, indexLocal, true); |
3166 | //USsyncLocal->removeAddressee( inLocal ); | ||
3167 | ++deletedPasswordsLocal; | 3169 | ++deletedPasswordsLocal; |
3168 | } else { | 3170 | } else { |
3169 | if ( ! manager->mWriteBackExistingOnly ) { | 3171 | if ( ! manager->mWriteBackExistingOnly ) { |
3170 | ++addedPasswordsRemote; | 3172 | ++addedPasswordsRemote; |
3171 | inLocal->meta.update = modifiedSync; | 3173 | inLocal->meta.update = modifiedSync; |
3172 | 3174 | ||
3173 | //first check if we have a matching category in the remote file | 3175 | //first check if we have a matching category in the remote file |
3174 | const string* localcat = syncLocal->getCategory(catLocal); | 3176 | const string* localcat = syncLocal->getCategory(catLocal); |
3175 | 3177 | ||
3176 | //USsyncLocal->insertAddressee( inLocal, false ); | ||
3177 | PwMDataItem newEntry; | 3178 | PwMDataItem newEntry; |
3178 | newEntry = *inLocal; | 3179 | newEntry = *inLocal; |
3179 | inRemote = &newEntry; | 3180 | inRemote = &newEntry; |
3180 | 3181 | ||
3181 | //USsyncRemote->insertAddressee( inRemote, false ); | 3182 | //USsyncRemote->insertAddressee( inRemote, false ); |
3182 | syncRemote->addEntry(localcat->c_str(), inRemote, true, false); | 3183 | syncRemote->addEntry(localcat->c_str(), inRemote, true, false); |
3183 | 3184 | ||
3184 | } | 3185 | } |
3185 | } | 3186 | } |
3186 | 3187 | ||
3187 | } | 3188 | } |
3188 | ++incCounter; | 3189 | ++incCounter; |
3189 | } | 3190 | } |
3190 | el.clear(); | 3191 | el.clear(); |
3191 | manager->hideProgressBar(); | 3192 | manager->hideProgressBar(); |
3192 | 3193 | ||
3193 | // Now write the info back into the sync data space of the files | 3194 | // Now write the info back into the sync data space of the files |
3194 | 3195 | ||
3195 | mLastSync = QDateTime::currentDateTime().addSecs( 1 ); | 3196 | mLastSync = QDateTime::currentDateTime().addSecs( 1 ); |
3196 | // get rid of micro seconds | 3197 | // get rid of micro seconds |
3197 | QTime t = mLastSync.time(); | 3198 | QTime t = mLastSync.time(); |
3198 | mLastSync.setTime( QTime (t.hour (), t.minute (), t.second () ) ); | 3199 | mLastSync.setTime( QTime (t.hour (), t.minute (), t.second () ) ); |
3199 | 3200 | ||
3200 | 3201 | ||
3201 | syncItemLocal->lastSyncDate = mLastSync; | 3202 | syncItemLocal->lastSyncDate = mLastSync; |
3202 | syncItemRemote->lastSyncDate = mLastSync; | 3203 | syncItemRemote->lastSyncDate = mLastSync; |
3203 | 3204 | ||
3204 | QString mes; | 3205 | QString mes; |
3205 | mes .sprintf( i18n("Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n"),addedPasswordsLocal, addedPasswordsRemote, changedLocal, changedRemote, deletedPasswordsLocal, deletedPasswordsRemote ); | 3206 | mes .sprintf( i18n("Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n"),addedPasswordsLocal, addedPasswordsRemote, changedLocal, changedRemote, deletedPasswordsLocal, deletedPasswordsRemote ); |
3206 | if ( manager->mShowSyncSummary ) { | 3207 | if ( manager->mShowSyncSummary ) { |
3207 | KMessageBox::information(0, mes, i18n("PWM/Pi Synchronization") ); | 3208 | KMessageBox::information(0, mes, i18n("PWM/Pi Synchronization") ); |
3208 | } | 3209 | } |
3209 | qDebug( mes ); | 3210 | qDebug( mes ); |
3210 | return e_success; | 3211 | return e_success; |
3211 | } | 3212 | } |
3212 | 3213 | ||
3213 | 3214 | ||
3214 | int PwMDoc::takePwMDataItem( PwMDataItem* local, PwMDataItem* remote, QDateTime lastSync, int mode , bool full ) | 3215 | int PwMDoc::takePwMDataItem( PwMDataItem* local, PwMDataItem* remote, QDateTime lastSync, int mode , bool full ) |
3215 | { | 3216 | { |
3216 | // 0 equal | 3217 | // 0 equal |
3217 | // 1 take local | 3218 | // 1 take local |
3218 | // 2 take remote | 3219 | // 2 take remote |
3219 | // 3 cancel | 3220 | // 3 cancel |
3220 | QDateTime localMod = local->meta.update; | 3221 | QDateTime localMod = local->meta.update; |
3221 | QDateTime remoteMod = remote->meta.update; | 3222 | QDateTime remoteMod = remote->meta.update; |
3222 | 3223 | ||
3223 | //US QString mCurrentSyncDevice = syncManager->getCurrentSyncDevice(); | ||
3224 | |||
3225 | if ( localMod == remoteMod ) | 3224 | if ( localMod == remoteMod ) |
3226 | return 0; | 3225 | return 0; |
3227 | 3226 | ||
3228 | qDebug(" %d %d conflict on %s %s ", mode, full, local->desc.c_str(), remote->desc.c_str() ); | 3227 | qDebug(" %d %d conflict on %s %s ", mode, full, local->desc.c_str(), remote->desc.c_str() ); |
3229 | 3228 | ||
3230 | //qDebug("%s %d %s %d", local->lastModified().toString().latin1() , localMod, remote->lastModified().toString().latin1(), remoteMod); | 3229 | //qDebug("%s %d %s %d", local->lastModified().toString().latin1() , localMod, remote->lastModified().toString().latin1(), remoteMod); |
3231 | //qDebug("%d %d %d %d ", local->lastModified().time().second(), local->lastModified().time().msec(), remote->lastModified().time().second(), remote->lastModified().time().msec() ); | 3230 | //qDebug("%d %d %d %d ", local->lastModified().time().second(), local->lastModified().time().msec(), remote->lastModified().time().second(), remote->lastModified().time().msec() ); |
3232 | //full = true; //debug only | 3231 | //full = true; //debug only |
3233 | if ( full ) { | 3232 | if ( full ) { |
3234 | bool equ = ( (*local) == (*remote) ); | 3233 | bool equ = ( (*local) == (*remote) ); |
3235 | if ( equ ) { | 3234 | if ( equ ) { |
3236 | //qDebug("equal "); | 3235 | //qDebug("equal "); |
3237 | if ( mode < SYNC_PREF_FORCE_LOCAL ) | 3236 | if ( mode < SYNC_PREF_FORCE_LOCAL ) |
3238 | return 0; | 3237 | return 0; |
3239 | 3238 | ||
3240 | }//else //debug only | 3239 | }//else //debug only |
3241 | //qDebug("not equal %s %s ", local->desc.c_str(), remote->desc.c_str()); | 3240 | //qDebug("not equal %s %s ", local->desc.c_str(), remote->desc.c_str()); |
3242 | } | 3241 | } |
3243 | 3242 | ||
3244 | int result; | 3243 | int result; |
3245 | bool localIsNew; | 3244 | bool localIsNew; |
3246 | //qDebug("%s -- %s mLastCalendarSync %s lastsync %s --- local %s remote %s ",local->summary().latin1(), remote->summary().latin1(),mLastCalendarSync.toString().latin1() ,lastSync.toString().latin1() , local->lastModified().toString().latin1() , remote->lastModified().toString().latin1() ); | 3245 | //qDebug("%s -- %s mLastCalendarSync %s lastsync %s --- local %s remote %s ",local->summary().latin1(), remote->summary().latin1(),mLastCalendarSync.toString().latin1() ,lastSync.toString().latin1() , local->lastModified().toString().latin1() , remote->lastModified().toString().latin1() ); |
3247 | 3246 | ||
3248 | if ( full && mode < SYNC_PREF_NEWEST ) | 3247 | if ( full && mode < SYNC_PREF_NEWEST ) |
3249 | mode = SYNC_PREF_ASK; | 3248 | mode = SYNC_PREF_ASK; |
3250 | 3249 | ||
3251 | switch( mode ) { | 3250 | switch( mode ) { |
3252 | case SYNC_PREF_LOCAL: | 3251 | case SYNC_PREF_LOCAL: |
3253 | if ( lastSync > remoteMod ) | 3252 | if ( lastSync > remoteMod ) |
3254 | return 1; | 3253 | return 1; |
3255 | if ( lastSync > localMod ) | 3254 | if ( lastSync > localMod ) |
3256 | return 2; | 3255 | return 2; |