<a *ngIf="queueType=='bib'" routerLink="/staff/catalog/record/{{row.imported_as}}">
{{row.imported_as}}
</a>
- <a *ngIf="queueType=='auth'" href="/eg/staff/cat/catalog/authority/{{row.imported_as}}/marc_edit">
+ <a *ngIf="queueType=='auth'" routerLink="/staff/cat/authority/edit/{{row.imported_as}}">
{{row.imported_as}}
</a>
-
</ng-template>
<span class="material-icons">assignment</span>
<span i18n>Search for Items by Barcode</span>
</a>
- <a href="/eg/staff/cat/catalog/index" class="dropdown-item"
+ <a class="dropdown-item" routerLink="/staff/catalog"
egAccessKey keyCtx="navbar" i18n-keySpec i18n-keyDesc
keySpec="f3" keyDesc="Catalog">
<span class="material-icons">search</span>
</a>
<div class="dropdown-menu" ngbDropdownMenu>
- <a href="/eg/staff/cat/catalog/index" class="dropdown-item"
+ <a class="dropdown-item" routerLink="/staff/catalog/search"
egAccessKey keyCtx="navbar"i18n-keySpec i18n-keyDesc
keySpec="f3" keyDesc="Catalog">
<span class="material-icons">search</span>
<span i18n>Search the Catalog</span>
</a>
- <a *ngIf="showAngularCatalog"
- class="dropdown-item"
- routerLink="/staff/catalog/search">
+ <a href="/eg/staff/cat/catalog/index" class="dropdown-item">
<span class="material-icons">search</span>
- <span i18n>Staff Catalog (Experimental)</span>
+ <span i18n>Search the Catalog (Traditional)</span>
</a>
<a class="dropdown-item" href="/eg/staff/cat/item/search"
egAccessKey keyCtx="navbar" i18n-keySpec i18n-keyDesc
this.printer.reprintLast();
}
- // TODO: Point to Angular catalog when the time comes
retrieveLastRecord() {
const recId = this.store.getLocalItem('eg.cat.last_record_retrieved');
if (recId) {
- window.location.href = '/eg/staff/cat/catalog/record/' + recId;
+ this.router.navigate(['/staff/catalog/record/' + recId]);
}
}
}
searchCatalog(): void {
if (!this.catSearchQuery) { return; }
- /* Route to angular6 catalog
this.router.navigate(
['/staff/catalog/search'],
{queryParams: {query : this.catSearchQuery}}
);
- */
-
- // Route to AngularJS / TPAC catalog
- window.location.href =
- '/eg/staff/cat/catalog/results?query=' +
- encodeURIComponent(this.catSearchQuery);
}
}
<eg-grid-field label="[% l('Title') %]"
path="call_number.record.simple_record.title" visible>
- <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item['call_number.record.id']}}">
+ <a href="/eg2/staff/catalog/record/{{item['call_number.record.id']}}">
{{item['call_number.record.simple_record.title']}}
</a>
</eg-grid-field>
<eg-grid-field label="[% l('Title') %]"
path="call_number.record.simple_record.title" visible>
- <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item['call_number.record.id']}}">
+ <a href="/eg2/staff/catalog/record/{{item['call_number.record.id']}}">
{{item['call_number.record.simple_record.title']}}
</a>
</eg-grid-field>
handler="resetPendingList"></eg-grid-action>
<eg-grid-field label="[% l('Title') %]" path="title">
- <a target="_blank" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item.id}}">
+ <a target="_blank" href="/eg2/staff/catalog/record/{{item.id}}">
{{item.title}} <span ng-show="item.id" class="glyphicon glyphicon-new-window"></span>
</a>
</eg-grid-field>
handler="addToBucket"></eg-grid-action>
<eg-grid-field label="[% l('Title') %]" path="title">
- <a target="_blank" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item.id}}">
+ <a target="_blank" href="/eg2/staff/catalog/record/{{item.id}}">
{{item.title}} <span ng-show="item.id" class="glyphicon glyphicon-new-window"></span>
</a>
</eg-grid-field>
<eg-grid-field path="id" required hidden></eg-grid-field>
<eg-grid-field label="[% l('Title') %]" path="title">
- <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item.id}}">
+ <a href="/eg2/staff/catalog/record/{{item.id}}">
{{item.title}}
</a>
</eg-grid-field>
{{item['dummy_title']}}
</span>
<span ng-hide="item['call_number.record.id'] == -1">
- <a target="_blank" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item['call_number.record.id']}}">
+ <a target="_blank" href="/eg2/staff/catalog/record/{{item['call_number.record.id']}}">
{{item['call_number.record.simple_record.title']}} <span ng-show="item['call_number.record.id']" class="glyphicon glyphicon-new-window"></span>
</a>
</span>
</span>
</div>
<div ng-if="!noMarcLink" class="flex-cell">
- <a target="_self"
- href="[% ctx.base_path %]/staff/cat/catalog/record/{{record.id()}}/marc_html">
+ <a href="/eg2/staff/catalog/record/{{record.id()}}/marc_html">
(MARC)
</a>
</div>
</div>
</div>
<div ng-if="record.merged_to()" class="row alert alert-warning">
- <a href="[% ctx.base_path %]/staff/cat/catalog/record/{{record.merged_to()}}">
+ <a href="/eg2/staff/catalog/record/{{record.merged_to()}}">
[% l('Record merged to #[_1] on [_2]',
'{{record.merged_to()}}',
'{{record.merge_date() | date:$root.egDateAndTimeFormat}}')
<div class="flex-row">
<div class="flex-cell strong-text">[% l('Title:') %]</div>
<div class="flex-cell flex-2">
- <a target="_self"
- href="[% ctx.base_path %]/staff/cat/catalog/record/{{record.id()}}">
+ <a href="/eg2/staff/catalog/record/{{record.id()}}">
{{rec_display.title}}
</a>
</div>
<div class="flex-row">
<div class="flex-cell strong-text">[% l('Title:') %]</div>
<div class="flex-cell flex-2">
- <a target="_self"
- href="[% ctx.base_path %]/staff/cat/catalog/record/{{record.id()}}">
+ <a href="/eg2/staff/catalog/record/{{record.id()}}">
{{rec_display.title}}
</a>
</div>
</span>
</div>
<div ng-if="!noMarcLink" class="flex-cell flex-2">
- <a target="_self"
- href="[% ctx.base_path %]/staff/cat/catalog/record/{{record.id()}}/marc_html">
+ <a href="/eg2/staff/catalog/record/{{record.id()}}/marc_html">
(MARC)
</a>
</div>
</div>
</div>
<div ng-if="record.merged_to()" class="row alert alert-warning">
- <a href="[% ctx.base_path %]/staff/cat/catalog/record/{{record.merged_to()}}">
+ <a href="/eg2/staff/catalog/record/{{record.merged_to()}}">
[% l('Record merged to #[_1] on [_2]',
'{{record.merged_to()}}',
'{{record.merge_date() | date:$root.egDateAndTimeFormat}}')
<div class="flex-row">
<div class="flex-cell strong-text">[% l('Title:') %]</div>
<div class="flex-cell flex-3">
- <a target="_self"
- href="[% ctx.base_path %]/staff/cat/catalog/record/{{record.id()}}">
+ <a href="/eg2/staff/catalog/record/{{record.id()}}">
{{rec_display.title}}
</a>
</div>
<div class="flex-row">
<div class="flex-cell strong-text">[% l('Title:') %]</div>
<div class="flex-cell flex-3">
- <a target="_self"
- href="[% ctx.base_path %]/staff/cat/catalog/record/{{record.id()}}">
+ <a href="/eg2/staff/catalog/record/{{record.id()}}">
{{rec_display.title}}
</a>
</div>
path='circ.xact_start'></eg-grid-field>
<eg-grid-field label="[% l('Title') %]" path="title">
- <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item.record.doc_id()}}">
+ <a href="/eg2/staff/catalog/record/{{item.record.doc_id()}}">
{{item.title}}
</a>
</eg-grid-field>
<eg-grid-field name="title"
path="current_copy.call_number.record.simple_record.title"
label="[% l('Title') %]">
- <a target="_self"
- href="[% ctx.base_path %]/staff/cat/catalog/record/{{item.record_id}}">
+ <a href="/eg2/staff/catalog/record/{{item.record_id}}">
{{item.title}}
</a>
</eg-grid-field>
<eg-grid-field label="[% l('Post-Clear') %]" path='post_clear'></eg-grid-field>
<eg-grid-field label="[% l('Title') %]" path='hold.title'>
- <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item.hold.record_id}}">
+ <a href="/eg2/staff/catalog/record/{{item.hold.record_id}}">
{{item.hold.title}}
</a>
</eg-grid-field>
<eg-grid-field path="payment_type" label="Payment Type"></eg-grid-field>
<eg-grid-field label="[% l('Title') %]" name="title"
path="xact.circulation.target_copy.call_number.record.simple_record.title">
- <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item.record_id}}">{{item.title}}</a>
+ <a href="/eg2/staff/catalog/record/{{item.record_id}}">{{item.title}}</a>
</eg-grid-field>
<!-- needed for bib link -->
<eg-grid-field label="[% l('Title') %]" name="title"
path="circulation.target_copy.call_number.record.simple_record.title">
- <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item.record_id}}">{{item.title}}</a>
+ <a href="/eg2/staff/catalog/record/{{item.record_id}}">{{item.title}}</a>
</eg-grid-field>
<!-- needed for bib link -->
<eg-grid-field label="[% l('Title') %]" name="title"
path='circulation.target_copy.call_number.record.simple_record.title'>
- <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item.record_id}}">{{item.title}}</a>
+ <a href="/eg2/staff/catalog/record/{{item.record_id}}">{{item.title}}</a>
</eg-grid-field>
<!-- fetch the record ID so we can link to it. hide it by default -->
<eg-grid-field path="circulation.target_copy.call_number.record.id"
path='circ.renewal_remaining'></eg-grid-field>
<eg-grid-field label="[% l('Title') %]" path="title">
- <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item.acn.record()}}">
+ <a href="/eg2/staff/catalog/record/{{item.acn.record()}}">
{{item.title}}
</a>
</eg-grid-field>
<eg-grid-field label="[% l('Pickup Library') %]" path='hold.pickup_lib.shortname'></eg-grid-field>
<eg-grid-field label="[% l('Title') %]" path='mvr.title'>
- <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item.mvr.doc_id()}}">
+ <a href="/eg2/staff/catalog/record/{{item.mvr.doc_id()}}">
{{item.mvr.title()}}
</a>
</eg-grid-field>
<eg-grid-field label="[% l('Renewals Remaining') %]" path='renewal_remaining'></eg-grid-field>
<eg-grid-field label="[% l('Fines Stopped') %]" path='stop_fines'></eg-grid-field>
<eg-grid-field label="[% l('Title') %]" path="target_copy.call_number.record.wide_display_entry.title" name="title">
- <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item.target_copy().call_number().record().id()}}">
+ <a href="/eg2/staff/catalog/record/{{item.target_copy().call_number().record().id()}}">
{{item.target_copy().call_number().record().wide_display_entry().title()}}
</a>
</eg-grid-field>
<div class="col-md-2">{{xact.summary().total_owed() | currency}}</div>
<div class="col-md-2 strong-text">[% l('Title') %]</div>
<div class="col-md-2">
- <a ng-if="title_id" target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{title_id}}">{{title}}</a>
+ <a ng-if="title_id" href="/eg2/staff/catalog/record/{{title_id}}">{{title}}</a>
<span ng-if="!title_id">{{title}}</span>
</div>
</div>
path='circ.renewal_remaining'></eg-grid-field>
<eg-grid-field label="[% l('Title') %]" path="title">
- <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{record.doc_id()}}">
+ <a href="/eg2/staff/catalog/record/{{record.doc_id()}}">
{{item.title}}
</a>
</eg-grid-field>
<eg-grid-field path='target_copy.call_number.label' hidden required sortable></eg-grid-field>
<eg-grid-field label="[% l('CN Suffix') %]" path="target_copy.call_number.suffix.label"></eg-grid-field>
<eg-grid-field path='target_copy.call_number.record.simple_record.title' label="[% l('Title') %]" sortable>
- <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item['target_copy.call_number.record.simple_record.id']}}">
+ <a href="/eg2/staff/catalog/record/{{item['target_copy.call_number.record.simple_record.id']}}">
{{item['target_copy.call_number.record.simple_record.title']}}
</a>
</eg-grid-field>
</a>
</li>
<li>
- <a href="./cat/catalog/index" target="_self"
+ <a href="/eg2/staff/catalog/search"
eg-accesskey="[% l('f3') %]"
- eg-accesskey-desc="[% l('OPAC') %]">
+ eg-accesskey-desc="[% l('Catalog') %]">
<span class="glyphicon glyphicon-search"></span>
<span>[% l('Search the Catalog') %]</span>
</a>
<a href uib-dropdown-toggle>[% l('Cataloging') %]<b class="caret"></b>
</a>
<ul uib-dropdown-menu>
- <li>
- <a href="./cat/catalog/index" target="_self">
+ <li>
+ <a href="/eg2/staff/catalog/search">
<span class="glyphicon glyphicon-search"></span>
- [% l('Search the Catalog') %]
+ <span>[% l('Search the Catalog') %]</span>
</a>
</li>
- <!--
- Link to experimental Angular staff catalog.
- -->
- <li ng-if="showAngularCatalog">
- <a href="/eg2/staff/catalog/search">
+ <li>
+ <a href="./cat/catalog/index" target="_self">
<span class="glyphicon glyphicon-search"></span>
- <span>[% l('Staff Catalog (Experimental)') %]</span>
+ [% l('Search the Catalog (Traditional)') %]
</a>
</li>
<li>
<div class="modal-body">
<div ng-repeat="legacy in legacies">
<div uib-tooltip="[% l('Record ID [_1]', '{{legacy.mvr.doc_id}}') %]" tooltip-placement="left">
- <a target="_blank" href="/eg/staff/cat/catalog/record/{{legacy.mvr.doc_id}}">{{legacy.mvr.title}}</a>
+ <a href="/eg2/staff/catalog/record/{{legacy.mvr.doc_id}}">{{legacy.mvr.title}}</a>
</div>
<div>
{{legacy.mvr.physical_description}}
if (!$scope.cat_query) return;
if ($event && $event.keyCode != 13) return; // input ng-keypress
$window.location.href =
- '/eg/staff/cat/catalog/results?query=' +
+ '/eg2/staff/catalog/search?query=' +
encodeURIComponent($scope.cat_query);
}
}])
args.lead_id,
args.records.map(function(val) { return val.id; })
).then(function() {
- $window.open(egCore.env.basePath + 'cat/catalog/record/' + args.lead_id);
+ $window.open('/eg2/staff/catalog/record/' + args.lead_id);
});
});
});
// TODO: probably want to set a limit on the number of
// new tabs one could choose to open at once
angular.forEach(records, function(rec) {
- var url = egCore.env.basePath +
- 'cat/catalog/record/' +
- rec.id;
+ var url = '/eg2/staff/catalog/record/' + rec.id;
$timeout(function() { $window.open(url, '_blank') });
});
}
}
$scope.show_in_catalog = function() {
- window.open('/eg/staff/cat/catalog/record/' + $scope.args.recordId + '/catalog', '_blank');
+ window.open('/eg2/staff/catalog/record/' + $scope.args.recordId, '_blank');
}
$scope.print_labels = function() {
}
$scope.show_record_holds = function() {
- window.open('/eg/staff/cat/catalog/record/' + $scope.args.recordId + '/holds', '_blank');
+ window.open('/eg2/staff/catalog/record/' + $scope.args.recordId + '/holds', '_blank');
}
$scope.add_item_alerts = function() {
$scope.showBibHolds = function () {
angular.forEach(gatherSelectedRecordIds(), function (r) {
- var url = egCore.env.basePath + 'cat/catalog/record/' + r + '/holds';
+ var url = '/eg2/staff/catalog/record/' + r + '/holds';
$timeout(function() { $window.open(url, '_blank') });
});
}
$scope.showInCatalog = function() {
var items = $scope.gridControls.selectedItems();
// relying on cant_showInCatalog to protect us
- var url = egCore.env.basePath +
- 'cat/catalog/record/' + items[0].tcn();
+ var url = '/eg2/staff/catalog/record/' + items[0].tcn();
$timeout(function() { $window.open(url, '_blank') });
};
$scope.cant_showInCatalog = function() {
egCore.strings.GO_TO_RECORD,
egCore.strings.GO_BACK
).result.then(function() {
- $window.open(egCore.env.basePath + 'cat/catalog/record/' + result.id());
+ $window.open('/eg2/staff/catalog/record/' + result.id());
});
}
}
}]
}).result.then(function () {
if (recId) {
- $window.location.href = egCore.env.basePath + 'cat/catalog/record/' + recId;
+ $window.location.href = '/eg2/staff/catalog/record/' + recId;
}
});
}
$scope.local_overlay_target = 0;
egCore.hatch.removeLocalItem('eg.cat.marked_overlay_record');
console.debug('overlay complete, target removed');
- $window.open(egCore.env.basePath + 'cat/catalog/record/' + overlay_target);
+ $window.open('/eg2/staff/catalog/record/' + overlay_target);
}
);
});
recordIds.push(i.acn.record());
});
angular.forEach(recordIds, function (r) {
- var url = egCore.env.basePath + 'cat/catalog/record/' + r + '/holds';
+ var url = '/eg2/staff/catalog/record/' + r + '/holds';
$timeout(function() { $window.open(url, '_blank') });
});
}
service.show_holds_for_title = function(items) {
var focus = items.length == 1;
angular.forEach(items, function(item) {
- var url = egCore.env.basePath +
- 'cat/catalog/record/' +
- item.mvr.doc_id() +
- '/holds';
+ var url = '/eg2/staff/catalog/record/' + item.mvr.doc_id() + '/holds';
$timeout(function() { var x = $window.open(url, '_blank'); if (focus) x.focus() });
});
}
service.show_holds_for_title_wide = function(items) {
var focus = items.length == 1;
angular.forEach(items, function(item) {
- var url = egCore.env.basePath +
- 'cat/catalog/record/' +
- item.hold.record_id +
- '/holds';
+ var url = '/eg2/staff/catalog/record/' + item.hold.record_id + '/holds';
$timeout(function() { var x = $window.open(url, '_blank'); if (focus) x.focus() });
});
}
service.show_in_catalog = function(copy_list){
angular.forEach(copy_list, function(copy){
- window.open('/eg/staff/cat/catalog/record/'+copy['call_number.record.id']+'/catalog', '_blank')
+ window.open('/eg2/staff/catalog/record/'+copy['call_number.record.id'], '_blank')
});
}
}
function navTo(path) {
+
+ if (path.match(/^\/eg2\//)) {
+ // Hotkey for /eg2/ page. Go directly to the
+ // provided URL.
+ $window.location.href = path;
+ return;
+ }
+
path = path.replace(/^\.\//,'');
$window.location.href = egCore.env.basePath + path;
}
$scope.retrieveLastRecord = function() {
var last_record = egCore.hatch.getLocalItem("eg.cat.last_record_retrieved");
if (last_record) {
- $window.location.href =
- egCore.env.basePath + 'cat/catalog/record/' + last_record;
+ $window.location.href =
+ '/eg2/staff/catalog/record/' + last_record;
}
}