// if we're displaying the advanced search form, select
// whatever default pane the user has chosen via workstation
// preference
+ var search_promises = [];
if (url.match(/\/opac\/advanced$/)) {
- egCore.hatch.getItem('eg.search.adv_pane').then(function(adv_pane_val){
- if (adv_pane_val) {
- url += '?pane=' + encodeURIComponent(adv_pane_val);
+ search_promises.push(
+ egCore.hatch.getItem('eg.search.adv_pane').then(
+ function(adv_pane) {
+ $scope.adv_pane = adv_pane;
+ }
+ )
+ );
+ }
+ // if we're displaying the browse search form,
+ // select whatever browse sort default the user
+ // has chosen via workstation preference
+ $scope.browse_sort_default;
+ search_promises.push(
+ egCore.hatch.getItem('eg.search.browse_sort_default').then(
+ function(browse_sort_default) {
+ $scope.browse_sort_default = browse_sort_default;
}
+ )
+ );
+ if (search_promises.length) {
+ $q.all(search_promises).then(function(success) {
+ if ($scope.adv_pane) {
+ url += '?pane=' + encodeURIComponent($scope.adv_pane);
+ }
+ if ($scope.adv_pane == 'browse' && $scope.browse_sort_default ) {
+ url += '&sort=' + encodeURIComponent($scope.browse_sort_default);
+ }
$scope.catalog_url = url;
});
} else {
$scope.catalog_url = url;
}
-
- // if we're displaying the browse search form,
- // select whatever browse sort default the user
- // has chosen via workstation preference
- if (url.match(/\?pane=browse/)) {
- var browse_sort_default = egCore.hatch.getLocalItem('eg.search.browse_sort_default');
- if (browse_sort_default) {
- url += '&sort=' + encodeURIComponent(browse_sort_default);
- }
- }
}
function init_parts_url() {