diff options
author | Guido Günther <agx@sigxcpu.org> | 2011-12-28 16:47:10 +0100 |
---|---|---|
committer | Guido Günther <agx@sigxcpu.org> | 2011-12-28 17:51:52 +0100 |
commit | dd63a041f9ac0afbb192a207765e59b9f5cd9e3c (patch) | |
tree | 84acc02be2b56f3b6445d01daaa47cd3ecfd8feb | |
parent | f500a15d3cf2c9b68f1ea712cc3c2e7ec8b027c9 (diff) |
When changing the provider allow the user to enter all data
-rw-r--r-- | src/ppm-provider-assistant.ui | 2 | ||||
-rwxr-xr-x | src/prepaid-manager-applet.py | 31 |
2 files changed, 21 insertions, 12 deletions
diff --git a/src/ppm-provider-assistant.ui b/src/ppm-provider-assistant.ui index f07314d..590e18d 100644 --- a/src/ppm-provider-assistant.ui +++ b/src/ppm-provider-assistant.ui @@ -33,7 +33,7 @@ <child> <object class="GtkLabel" id="label1"> <property name="visible">True</property> - <property name="label" translatable="yes">Prepaid Manager couldn't autodetect your mobile broadband provider. The following pages will guide you through the process of setting it up.</property> + <property name="label" translatable="yes">The following pages will guide you through the process of setting it you mobile broadband provider.</property> <property name="wrap">True</property> </object> <packing> diff --git a/src/prepaid-manager-applet.py b/src/prepaid-manager-applet.py index 75ac064..2a44daa 100755 --- a/src/prepaid-manager-applet.py +++ b/src/prepaid-manager-applet.py @@ -121,18 +121,27 @@ class PPMController(GObject.GObject): """ Given the imsi, determine the provider based on that information from providerdb, request user input where ncessary + + @param imsi: If given use this to dertimine the mcc and mnc + and from that the provider. If set to C{None} request all + information from the user. + @type imsi: C{str} """ - imsi = imsi or self.imsi - mcc, mnc = self._imsi_to_network_id(imsi) - self.providers = self.providerdb.get_providers(mcc, mnc) - if self.providers: - if len(self.providers) > 1: - # More than one provider matching mcc/mnc, let user select - self.view.show_provider_assistant(self.providers) - else: - self.set_provider(self.providers[0]) + self.providers = [] + if imsi: + mcc, mnc = self._imsi_to_network_id(imsi) + self.providers = self.providerdb.get_providers(mcc, mnc) + + if len(self.providers) == 1: + self.set_provider(self.providers[0]) + elif len(self.providers): + # More than one provider matching mcc/mnc, let user select + self.view.show_provider_assistant(self.providers) else: - self.view.show_provider_unknown(mcc, mnc) + if imsi: + self.view.show_provider_unknown(mcc, mnc) + else: + self.view.show_provider_assistant(None) def _get_account_from_accountdb(self, imsi): """ @@ -387,7 +396,7 @@ class PPMDialog(GObject.GObject, PPMObject): self.controller.fetch_balance() def on_provider_change_clicked(self, dummy): - self.controller.get_provider_interactive() + self.controller.get_provider_interactive(imsi=None) def on_entry_code_insert(self, entry): cur_len = entry.get_text_length() |