diff --git a/plugins/API/API.php b/plugins/API/API.php
index 4b4a9cfaf3944ca1911c55c472d7b8e121f3743e..3a0fd869d72d587f9850ca49e87affa47639746f 100644
--- a/plugins/API/API.php
+++ b/plugins/API/API.php
@@ -208,7 +208,7 @@ class Piwik_API_API
 		        'category' => 'Visit',
 		        'name' => 'General_VisitorID',
 		        'segment' => 'visitorId',
-				'acceptedValues' => '34c31e04394bdc63 - any 16 chars ID requested via the Tracking API function getVisitorId()',
+				'acceptedValues' => '34c31e04394bdc63 - any 16 Hexadecimal chars ID, which can be fetched using the Tracking API function getVisitorId()',
 		        'sqlSegment' => 'log_visit.idvisitor',
 		        'sqlFilter' => array('Piwik_Common', 'convertVisitorIdToBin'),
 	    );
diff --git a/plugins/CoreHome/templates/broadcast.js b/plugins/CoreHome/templates/broadcast.js
index b81d580cf357a4a30686e5664292e6a619205172..1f16c31afb06c4e09ecad6210ef43ade87560ff4 100644
--- a/plugins/CoreHome/templates/broadcast.js
+++ b/plugins/CoreHome/templates/broadcast.js
@@ -329,7 +329,7 @@ broadcast.getParamValue = function (param, url)
         }
         var value = url.substring(startStr + param.length +1,endStr);
         // sanitize values
-        var value = value.replace(/[^_%\-,0-9a-zA-Z]/gi, '');
+        var value = value.replace(/[^_%\-\<\>!@=,0-9a-zA-Z]/gi, '');
         
         return value;
     } else {
diff --git a/plugins/CoreHome/templates/datatable.js b/plugins/CoreHome/templates/datatable.js
index fa5a6064a3b9ca04c30c25a4776aa434979cc324..d7e22421da568167a98a2ec1f78a95a33203a6b8 100644
--- a/plugins/CoreHome/templates/datatable.js
+++ b/plugins/CoreHome/templates/datatable.js
@@ -580,7 +580,8 @@ dataTable.prototype =
 					str += '&segment='+segment;
 				}
 				// Export Goals specific reports
-				if(typeof idGoal != 'undefined') {
+				if(typeof idGoal != 'undefined'
+					&& idGoal != '-1') {
 					str += '&idGoal='+idGoal;
 				}
 				if( filter_limit )
diff --git a/plugins/Dashboard/templates/Dashboard.js b/plugins/Dashboard/templates/Dashboard.js
index d4b17352fca5f50e04be0cb0decc3889ef23a229..feef49f0811e9ab90af30c372aabf44a2c6bab2c 100644
--- a/plugins/Dashboard/templates/Dashboard.js
+++ b/plugins/Dashboard/templates/Dashboard.js
@@ -171,6 +171,10 @@ dashboard.prototype =
 		{
 			widgetParameters['viewDataTable'] = viewDataTableToRestore;
 		}
+		var segment = broadcast.getValueFromHash('segment');
+		if(segment.length) {
+			widgetParameters['segment'] = segment;
+		}
 		piwikHelper.queueAjaxRequest( $.ajax(widgetsHelper.getLoadWidgetAjaxRequest(uniqueId, widgetParameters, onWidgetLoadedReplaceElementWithContent)) );
 	},