in public/components/content-list-drawer/content-list-drawer.js [44:136]
controller: function ($scope, $element) {
$scope.legalValues = legalValues;
$scope.pictureDeskValues = pictureDeskValues;
var $parent = $element.parent();
/**
* Hide the drawer from view.
* @returns {Promise}
*/
this.hide = () => new Promise((resolve) => {
if (this.isHidden()) {
return resolve();
}
$element.addClass(hiddenClass);
$scope.contentList.selectedItem = null;
$scope.assigneeImage = ' ';
$parent.append($element);
resolve();
});
/**
* Shows the drawer.
* @returns {Promise}
*/
this.show = () => new Promise((resolve) => {
if (!this.isHidden()) {
resolve();
}
$element.removeClass(hiddenClass);
resolve();
});
/**
* Shows a new contentItem moving the drawer to the row beneath its element.
*/
this.showContent = (contentItem, $contentListItemElement, capiData) => {
var self = this;
return self.hide().then(() => {
$scope.$apply(() => {
$contentListItemElement.after($element);
delete $scope.bookSectionQuery;
delete $scope.plannedBookId;
delete $scope.plannedBookSectionId;
$scope.showBookTagPicker = false;
delete $scope.editedLongPlannedPrintLocationDescription;
delete $scope.candidateBookSections;
$scope.contentItem = contentItem;
$scope.plannedPublicationId
$scope.contentList.selectedItem = contentItem;
$scope.capiData = capiData;
$scope.currentDatePickerValue = $scope.contentItem.item.due ? $scope.contentItem.item.due : undefined;
$scope.currentPublicationDatePickerValue = $scope.contentItem.plannedNewspaperPublicationDate ? $scope.contentItem.plannedNewspaperPublicationDate : undefined;
});
return self.show();
});
};
this.isHidden = () => $element.hasClass(hiddenClass);
this.toggle = () => this.isHidden() ? this.show() : this.hide();
/**
* Toggles drawer display and can display a different contentItem
* if one is already being displayed.
*/
this.toggleContent = (contentItem, $contentListItemElement, capiData) => {
var selectedItem = $scope.contentList.selectedItem;
if (selectedItem && selectedItem.id !== contentItem.id) {
return this.hide().then(() => this.showContent(contentItem, $contentListItemElement, capiData));
}
return this.isHidden() ? this.showContent(contentItem, $contentListItemElement, capiData) : this.hide();
};
},