var HelpService=angular.module("HelpService",[]).factory("ErrorHandler",["$http",function(n){function r(r,u){if(t.Show=!1,t.Type=u,t.IsModal=!1,r&&r.length>0){var f="/Api/CodeLocalResource/GetLocalizedText?id="+r;n.get(f).then(function(n){t.IsModal=i();t.Show=!0;t.Msg=n.data},function(){})}t.Errors&&t.Errors.length>0&&(t.Show=!0,t.IsModal=i())}function u(n,r){t.Show=!0;t.Type=r;t.IsModal=i();t.Msg=n}function f(){t.Show=!1;t.Type=0;t.IsModal=!1;t.Msg="";t.Errors=[]}function i(){return t.Modal.length>0?$("#"+t.Modal).data("bs.modal")&&$("#"+t.Modal).data("bs.modal").isShown:!1}var t={};return t.Modal="",t.Show=!1,t.IsModal=!1,t.Type=0,t.Msg="",t.Errors=[],t.DisplayError=r,t.DisplayMessage=u,t.ClearError=f,t}]).factory("FileHandler",["$http","$window",function(n,t){function u(n){if(n&&n.length>0){var t="/Api/UploadFile/GetFileContent?id="+n;r(t)}}function f(n){var t=r(n);setTimeout(function(){t.print()},1e3)}function e(n){n&&n.length>0&&r(n)}function r(n){var r=800,u=600,f=t.screen.availLeft+t.screen.availWidth/2-r/2,e=t.screen.availTop+t.screen.availHeight/2-u/2,i;return typeof i!="undefined"&&i.closed==!1&&i.close(),t.open(n,"PopupWin","scrollbars=yes,status=yes,toolbar=yes,menubar=no,location=no,resizable=no,fullscreen=yes, width="+r+", height="+u+", top="+e+", left="+f)}var i={};return i.Download=u,i.Print=f,i.Display=e,i}]).factory("LocalizeHandler",["$http",function(n){function i(i,r){var u="";angular.isArray(i)?angular.forEach(i,function(n){u!=""&&(u=u+",");u=u+n}):u=i;n.get("/Api/CodeLocalResource/GetLocalizedByKeys?keys="+u).then(function(n){t.LocalizedText=n.data;r!=null&&r()})}var t={};return t.GetLocalized=i,t.LocalizedText=[],t}]),HelpDirective=angular.module("HelpDirective",["HelpService"]).directive("errorBlock",function(){return{retrict:"E",scope:{object:"=",modal:"="},template:'<div ng-show="object.Show && ((object.IsModal && modal) || (!object.IsModal && !modal))" class="FormValidationSummary{{object.Type > 0 ? \' alert alert-success\' : \' alert alert-danger\'}}">{{object.Msg}}<ul><li ng-repeat="rp in object.Errors">{{rp.Text}}<\/li><\/ul><\/div>'}}).directive("searchCompanyModal",function(){var n=["$http","ErrorHandler","LocalizeHandler",function(n,t,i){var r=this;t.Modal="dialogSearchCompanyModal";r.Error=t;r.Company={};r.Term=null;r.CompanySearchResult={};r.error={};r.close=function(){r.callBackFn({company:r.Company})};r.openModal=function(n){r.Error.ClearError();r.error={};r.Company={};r.CompanySearchResult={};r.Term=null;angular.element("#toggleSearchCompanyModal").trigger("click");n&&n.length>0&&(r.Term=n,r.searchCompany())};r.searchCompany=function(){r.ShowLoading=!0;r.CompanySearchResult={};n.get("/Api/Corp/SearchCorp",{params:{Term:r.Term,ExcludePending:r.ExcludePendingCompanies,ExcludeNotReReg:r.ExcludeNotReReg,UseGenericSearch:!0,PaginationPageSize:100}}).then(function(n){r.ShowLoading=!1;r.CompanySearchResult=n.data.records},function(n){r.ShowLoading=!1;n.data.Message&&r.Error.DisplayError(n.data.Message)})};r.companySearchSelect=function(n){r.Error.ClearError();r.error={};var t=!1;angular.forEach(r.CompanySearchResult,function(i){i.CorpId==n&&(r.Company.Name=i.Name,r.Company.Type=i.Type,r.Company.CorpId=i.CorpId,r.Company.RegistrationNumber=i.RegistrationNumber,r.Company.AltName=i.AltName,r.Company.TypeId=i.TypeId,t=!0,r.close())});t||r.Error.DisplayError("error_batch_searchcompanyselect_load")};r.LocalizedText={};r.Init=function(){i.GetLocalized(["batch_document_searchcompany_modalheader","batch_document_companynameorregnumber_label","batch_search_companyname","batch_search_companyregnumber","batch_search_companytype","batch_search_companystatus","batch_search_companyregdate","btn_Select","btn_Close","btn_Search","MaxLenErrorMsg","RequiredField"],function(){r.LocalizedText=i.LocalizedText})};r.Init()}];return{retrict:"EA",scope:{callBackFn:"&",setOpenModal:"&",ShowSearchSelect:"=enableSelect",ExcludePendingCompanies:"=excludePending",ExcludeNotReReg:"=excludeNotReReg",StatusIds:"=statusIds"},templateUrl:"/corp/templates/searchCompanyModal.html",controller:n,controllerAs:"dvm",bindToController:!0,link:function(n,t,i,r){r.setOpenModal({openModalFn:r.openModal})}}})