@@ -194,7 +194,8 @@ def run(self):
194194 if self .first_start :
195195 self .first_start = False
196196 self .dlg = PluginExporterDialog ()
197- pyplugin_installer .instance ().reloadAndExportData () # Generate metadata cache
197+ self .pyplugin = pyplugin_installer .instance ()
198+ self .pyplugin .reloadAndExportData () # Generate metadata cache
198199 self .get_plugins ()
199200 self .dlg .btn_select_all .clicked .connect (self .select_all )
200201 self .dlg .btn_deselect_all .clicked .connect (self .deselect_all )
@@ -389,9 +390,10 @@ def import_plugins(self):
389390 try :
390391 if plugin ['id' ] == '-' : # It's a third party repository
391392 self .add_repository (plugin )
392- pyplugin_installer .instance ().fetchAvailablePlugins (True )
393- pyplugin_installer .instance ().installPlugin (plugin ['id' ])
394- self .iface .messageBar ().pushSuccess ("Success" , plugin ['name' ] + " was installed successfully." )
393+ self .iface .messageBar ().pushSuccess ("Success" , plugin ['name' ] + " was added to the repositories." )
394+ else :
395+ self .pyplugin .installPlugin (plugin ['id' ])
396+ self .iface .messageBar ().pushSuccess ("Success" , plugin ['name' ] + " was installed successfully." )
395397 except KeyError :
396398 self .iface .messageBar ().pushMessage ("Error" ,
397399 "Could not install " + plugin ['name' ] + "." ,
@@ -402,17 +404,18 @@ def import_plugins(self):
402404 def add_repository (self , repo_info ):
403405 settings = QgsSettings ()
404406 settings .beginGroup ("app/plugin_repositories" )
405- reposName = repo_info ['name' ]
406- reposURL = repo_info ['zip_repository' ]
407- if reposName in repositories .all ():
408- reposName = reposName + "(2)"
407+ repo_name = repo_info ['name' ]
408+ repo_url = repo_info ['zip_repository' ]
409+ if repo_name in repositories .all ():
410+ repo_name = repo_name + "(2)"
411+ self .iface .messageBar ().pushInfo ("Info" ,
412+ "Found a repository with the same names. Please check your repository "
413+ "settings for duplicate entries, the one imported ends with (2)." )
409414 # add to settings
410- settings .setValue (reposName + "/url" , reposURL )
411- settings .setValue (reposName + "/authcfg" , "" ) #dlg.editAuthCfg.text().strip())
412- settings .setValue (reposName + "/enabled" , "True" ) #bool(dlg.checkBoxEnabled.checkState()))
413- # refresh lists and populate widgets
414- #plugins.removeRepository(reposName)
415- pyplugin_installer .instance ().reloadAndExportData ()
415+ settings .setValue (repo_name + "/url" , repo_url )
416+ settings .setValue (repo_name + "/authcfg" , "" )
417+ settings .setValue (repo_name + "/enabled" , "True" )
418+ self .pyplugin .reloadAndExportData ()
416419
417420 # Disables and enables widgets
418421 def toggle_widget (self ):
0 commit comments