It looks like based on choices made in #1 and #2, you compute a new search string.
If you bind the radio button in #1 to $timePeriod$, the text field in #2 to $extraFilter$, and the search template to $computedSearch$, you could create a JS TokenForwarder that recomputes $computedSearch$ whenever #1 and #2 change.
For example:
require([
"splunkjs/ready!",
"splunkjs/mvc/tokenforwarder"
], function(mvc, TokenForwarder) {
new TokenForwarder(
["$timePeriod$", "$extraFilter"],
"$computedSearch$",
function(timePeriod, extraFilter) {
var computedSearch;
if (timePeriod === 'summary') {
computedSearch = ...
} else if (timePeriod === 'monthly') {
computedSearch = ...
} else if (timePeriod === 'weekly') {
computedSearch = ...
}
if (extraFilter !== '') {
computedSearch += ' | search ' + extraFilter;
}
return computedSearch;
}
);
});
More details on transforming and validating tokens here:
http://dev.splunk.com/view/SP-CAAAEW4
... View more