$scope.flat_text_marc = $scope.record.toBreaker();
if ($scope.record_type == 'bre') {
- $scope.cataloging_date = new Date(rec.cataloging_date()) || new Date();
+ $scope.cataloging_date = Date.parse(rec.cataloging_date()) || new Date();
}
if ($scope.record_type == 'bre' && !$scope.brandNewRecord) {
$scope.bib_source.id = $scope.bibSource = rec.source(); //$scope.Record().source();
};
$scope.updateDate = function(cataloging_date) {
- if (cataloging_date instanceof Date && !isNaN(cataloging_date)) {
- $scope.Record().cataloging_date(new Date(cataloging_date).toISOString());
- } else if (!cataloging_date) {
- $scope.Record.cataloging_date(null);
- } else {
- return;
+ if (cataloging_date != $scope.Record().cataloging_date()) {
+ if (cataloging_date instanceof Date && !isNaN(cataloging_date)) {
+ saveDate($scope.Record().cataloging_date(), cataloging_date);
+ $scope.Record().cataloging_date(new Date(cataloging_date).toISOString());
+ } else if (!cataloging_date) {
+ saveDate($scope.Record().cataloging_date(), cataloging_date);
+ $scope.Record().cataloging_date(null);
+ } else {
+ return;
+ }
}
}
+ var saveDate = function(orig_date, new_date) {
+ egCore.pcrud.retrieve(
+ $scope.record_type, $scope.Record().id()
+ ).then(function(rec) {
+ if (new_date) {
+ rec.cataloging_date(new Date(new_date).toISOString());
+ } else {
+ rec.cataloging_date(null);
+ }
+ egCore.pcrud.update(rec);
+ });
+ }
+
$scope.processRedo = function () {
if ($scope.record_redo_stack.length) {
$scope.in_redo = true;