define(["searchFields", "searchResults", "events"], function (SearchFields, SearchResults, events) { "use strict"; function init(instance, tabContent, options) { tabContent.innerHTML = '
'; instance.searchFields = new SearchFields({ element: tabContent.querySelector(".searchFields") }); instance.searchResults = new SearchResults({ element: tabContent.querySelector(".searchResults"), serverId: ApiClient.serverId(), parentId: options.parentId, collectionType: options.collectionType }); events.on(instance.searchFields, "search", function (e, value) { instance.searchResults.search(value); }); } function SearchTab(view, tabContent, options) { var self = this; options = options || {}; init(this, tabContent, options); self.preRender = function () {}; self.renderTab = function () { var searchFields = this.searchFields; if (searchFields) { searchFields.focus(); } }; } SearchTab.prototype.destroy = function () { var searchFields = this.searchFields; if (searchFields) { searchFields.destroy(); } this.searchFields = null; var searchResults = this.searchResults; if (searchResults) { searchResults.destroy(); } this.searchResults = null; }; return SearchTab; });