1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- $(function () {
- BWA.CommonView = BWA.CommonView || {};
- BWA.CommonView.create = function (params, viewInfo, options,
- popupSearchViewVisible, handleViewShown, defaultFilter,
- handleSearchInSearchView, handleSearchViewInitializeUpdate,
- chartLayout) {
- var initialized = false,
- promiseSearchEvent = new $.Deferred(),
- hasnotModificationPermission = ko.observable(true),
- isModifiableBusinessField = ko.observable(),
- viewModel;
- defaultFilter = defaultFilter || null;
- //popupSearchViewVisible = false;
- viewModel = {
- promiseSearchEvent: promiseSearchEvent.promise(),
- isModifiableBusinessField: isModifiableBusinessField,
- hasnotModificationPermission: hasnotModificationPermission,
- viewShown: function () {
- hasnotModificationPermission(!BWA.UserInfo.hasPermissionOfModification(viewInfo.viewName));
- isModifiableBusinessField(BWA.UserInfo.isDependBusinessField(viewInfo.viewName) === false);
- // 2018 02 22 hcLee 위치 이동 전 원래 위치 ............
- if (_.isNull(handleViewShown) === false && _.isUndefined(handleViewShown) === false) {
- handleViewShown(); // 상속하여 사용하는쪽에서 처리 해봐야 2015 03 04
- }
- // 2018 02 22 hcLee 위치 이동 ................ 이것 때문에 2틀 소요함, 차트 div를 확대 축소하기 위해서는 차트를 동적으로 생성한 후 (div가 생성된 후)
- // chartLayout.initialize(); 를 불러줘야 이벤트바인딩이 가능하다.
- if (initialized === false) {
- if (_.isUndefined(chartLayout) === false) {
- chartLayout.initialize();
- }
- initialized = true;
- }
-
- if (options != null) {
- if (options.NoSearchView == true) // 2019.07.25 kgpark 검색버튼 삭제
- popupSearchViewVisible(null);
- }
- $SearchView.setPopupVisibleObservable(popupSearchViewVisible); // 여기서 처리되기 때문에 의미가 없었다. (검색버튼이 다시 보이는 현상) 2015 03 04
- $SideMenu.showSideMenuIfWill(params.view);
- if (_.isUndefined(chartLayout) === false) {
- chartLayout.onShown();
- }
- },
- viewHidden: function () {
- if (_.isUndefined(chartLayout) === false) {
- chartLayout.onHidden();
- }
- }
- };
- //viewModel.popupSearchViewVisible = popupSearchViewVisible;
- if (_.has(options, 'searchViewItems')) {
- var handler = _.isFunction(handleSearchInSearchView) ? handleSearchInSearchView :
- function (filter) {
- promiseSearchEvent.notify(filter);
- };
- $SearchView.setupInView(viewModel, options, popupSearchViewVisible, defaultFilter, handler, handleSearchViewInitializeUpdate);
- }
- /*else { // hcLee 2015 03 02
- alert('sdfs');
- }*/
- return viewModel;
- };
- });
|