| 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;    };});
 |