Translatability tweaks
[moonshot-ui.git] / src / moonshot-identity-management-view.vala
index 9f4e6bc..55932f7 100644 (file)
@@ -98,7 +98,7 @@ public class IdentityManagerView : Window {
         #endif
         identities_manager = parent_app.model;
         request_queue = new GLib.Queue<IdentityRequest>();
-        this.title = "Moonshot Identity Selector";
+        this.title = _("Moonshot Identity Selector");
         this.set_position(WindowPosition.CENTER);
         set_default_size(WINDOW_WIDTH, WINDOW_HEIGHT);
         build_ui();
@@ -299,7 +299,7 @@ public class IdentityManagerView : Window {
         this.send_button.set_sensitive(false);
     }
 
-    public bool add_identity(IdCard id_card, bool force_flat_file_store)
+    public bool add_identity(IdCard id_card, bool force_flat_file_store, out ArrayList<IdCard>? old_duplicates=null)
     {
         #if OS_MACOS
         /* 
@@ -316,6 +316,10 @@ public class IdentityManagerView : Window {
             int flags = prev_id.Compare(id_card);
             logger.trace("add_identity: compare returned " + flags.to_string());
             if (flags == 0) {
+                if (&old_duplicates != null) {
+                    old_duplicates = new ArrayList<IdCard>();
+                }
+
                 return false; // no changes, no need to update
             } else if ((flags & (1 << IdCard.DiffFlags.DISPLAY_NAME)) != 0) {
                 dialog = new Gtk.MessageDialog(this,
@@ -348,10 +352,15 @@ public class IdentityManagerView : Window {
         #endif
 
         if (ret == Gtk.ResponseType.YES) {
-            this.identities_manager.add_card(id_card, force_flat_file_store);
+            this.identities_manager.add_card(id_card, force_flat_file_store, out old_duplicates);
             return true;
         }
-        return false;
+        else {
+            if (&old_duplicates != null) {
+                old_duplicates = new ArrayList<IdCard>();
+            }
+            return false;
+        }
     }
 
     private void add_identity_cb()
@@ -428,9 +437,9 @@ public class IdentityManagerView : Window {
     {
         bool remove = WarningDialog.confirm(this, 
                                             Markup.printf_escaped(
-                                                "<span font-weight='heavy'>You are about to remove the identity '%s'.</span>",
+                                                "<span font-weight='heavy'>" + _("You are about to remove the identity '%s'.") + "</span>",
                                                 id_card.display_name)
-                                            + "\n\nAre you sure you want to do this?",
+                                            + "\n\n" + _("Are you sure you want to do this?"),
                                             "delete_idcard");
         if (remove) 
             remove_identity(id_card);
@@ -739,7 +748,7 @@ SUCH DAMAGE.
         this.search_entry.key_press_event.connect(search_entry_key_press_event_cb);
         this.search_entry.set_width_chars(24);
 
-        var search_label_markup =_("<small>") + search_tooltip_text + _("</small>");
+        var search_label_markup ="<small>" + search_tooltip_text + "</small>";
         var full_search_label = new Label(null);
         full_search_label.set_markup(search_label_markup);
         full_search_label.set_alignment(1, 0);
@@ -859,9 +868,9 @@ SUCH DAMAGE.
         if (selection_in_progress()) {
             var result = WarningDialog.confirm(this,
                                                Markup.printf_escaped(
-                                                   _("<span font-weight='heavy'>Do you wish to use the %s service?</span>"),
+                                                   "<span font-weight='heavy'>" + _("Do you wish to use the %s service?") + "</span>",
                                                    this.request_queue.peek_head().service)
-                                               + _("\n\nSelect Yes to select an ID for this service, or No to cancel"),
+                                               + "\n\n" + _("Select Yes to select an ID for this service, or No to cancel"),
                                                "close_moonshot_window");
             if (result) {
                 // Prevent other handlers from handling this event; this keeps the window open.
@@ -883,11 +892,11 @@ SUCH DAMAGE.
     }
 
     private void import_identities_cb() {
-        var dialog = new FileChooserDialog("Import File",
+        var dialog = new FileChooserDialog(_("Import File"),
                                            this,
                                            FileChooserAction.OPEN,
                                            _("Cancel"),ResponseType.CANCEL,
-                                           _("Save"), ResponseType.ACCEPT,
+                                           _("Open"), ResponseType.ACCEPT,
                                            null);
 
         if (import_directory != null) {
@@ -915,6 +924,14 @@ SUCH DAMAGE.
                     continue;
                 }
 
+                if (!card.trust_anchor.is_empty()) {
+                    string ta_datetime_added = TrustAnchor.format_datetime_now();
+                    card.trust_anchor.set_datetime_added(ta_datetime_added);
+                    logger.trace("import_identities_cb : Set ta_datetime_added for '%s' to '%s'; ca_cert='%s'; server_cert='%s'"
+                                 .printf(card.display_name, ta_datetime_added, card.trust_anchor.ca_cert, card.trust_anchor.server_cert));
+                }
+
+
                 bool result = add_identity(card, use_flat_file_store);
                 if (result) {
                     logger.trace(@"import_identities_cb: Added or updated '$(card.display_name)'");
@@ -933,6 +950,7 @@ SUCH DAMAGE.
             msg_dialog.run();
             msg_dialog.destroy();
         }
+        dialog.destroy();
     }
 
 }