Skip to content

Commit 19e6015

Browse files
committedMar 5, 2017
MetaSearch: clean OWS URL when adding from search (http://hub.qgis.org/issues/16261)
1 parent 5a962e8 commit 19e6015

File tree

2 files changed

+18
-5
lines changed

2 files changed

+18
-5
lines changed
 

‎python/plugins/MetaSearch/dialogs/maindialog.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,10 +54,10 @@
5454
from MetaSearch.dialogs.newconnectiondialog import NewConnectionDialog
5555
from MetaSearch.dialogs.recorddialog import RecordDialog
5656
from MetaSearch.dialogs.xmldialog import XMLDialog
57-
from MetaSearch.util import (get_connections_from_file, get_ui_class,
58-
get_help_url, highlight_xml, normalize_text,
59-
open_url, render_template, serialize_string,
60-
StaticContext)
57+
from MetaSearch.util import (clean_ows_url, get_connections_from_file,
58+
get_ui_class, get_help_url, highlight_xml,
59+
normalize_text, open_url, render_template,
60+
serialize_string, StaticContext)
6161

6262
BASE_CLASS = get_ui_class('maindialog.ui')
6363

@@ -723,7 +723,7 @@ def add_to_ows(self):
723723

724724
# no dups detected or overwrite is allowed
725725
self.settings.beginGroup('/Qgis/connections-%s' % stype[1])
726-
self.settings.setValue('/%s/url' % sname, data_url)
726+
self.settings.setValue('/%s/url' % sname, clean_ows_url(data_url))
727727
self.settings.endGroup()
728728

729729
# open provider window

‎python/plugins/MetaSearch/util.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@
4444
from pygments import highlight
4545
from pygments.lexers import XmlLexer
4646
from pygments.formatters import HtmlFormatter
47+
from qgis.PyQt.QtCore import QUrl
4748
from qgis.PyQt.QtWidgets import QMessageBox
4849
from qgis.PyQt.uic import loadUiType
4950

@@ -171,3 +172,15 @@ def serialize_string(input_string):
171172
value = '%s 1' % input_string
172173

173174
return value
175+
176+
177+
def clean_ows_url(url):
178+
"""clean an OWS URL of added basic service parameters"""
179+
180+
url2 = QUrl(url)
181+
url2.removeEncodedQueryItem('service')
182+
url2.removeEncodedQueryItem('SERVICE')
183+
url2.removeEncodedQueryItem('request')
184+
url2.removeEncodedQueryItem('REQUEST')
185+
186+
return url2.toString()

0 commit comments

Comments
 (0)
Please sign in to comment.