/**
  * Returns an URL that switches sorting to the given sorting field
  *
  * @param array $arguments
  * @return	string
  */
 public function execute(array $arguments = array())
 {
     $sortUrl = '';
     $configuredSortingFields = $this->configuration['search.']['sorting.']['fields.'];
     $sortField = $arguments[0];
     $urlParameters = t3lib_div::_GP('tx_solr');
     $urlSortingParameter = $urlParameters['sort'];
     list($currentSortByField, $currentSortDirection) = explode(' ', $urlSortingParameter);
     if (array_key_exists($sortField, $configuredSortingFields) && $configuredSortingFields[$sortField] == 1) {
         $sortDirection = $this->configuration['search.']['sorting.']['defaultOrder'];
         $sortParameter = $sortField . ' ' . $sortDirection;
         // toggle sorting direction for the current sorting field
         if ($currentSortByField == $sortField) {
             switch ($currentSortDirection) {
                 case 'asc':
                     $sortDirection = 'desc';
                     break;
                 case 'desc':
                     $sortDirection = 'asc';
                     break;
             }
             $sortParameter = $sortField . ' ' . $sortDirection;
         }
         $sortUrl = $this->query->getQueryUrl(array('sort' => $sortParameter));
     }
     return $sortUrl;
 }
 /**
  * Builds the url to a facet from a search result.
  *
  * @param	string	$facetToReplace A filter string to use in the link parameters
  * @return	string	Url to remooce a facet
  */
 protected function buildReplaceFacetUrl($facetToReplace)
 {
     $filterParameters = $this->replaceFacetAndEncodeFilterParameters($facetToReplace);
     return $this->query->getQueryUrl(array('filter' => $filterParameters));
 }